Mostrando entradas con la etiqueta codigo. Mostrar todas las entradas
Mostrando entradas con la etiqueta codigo. Mostrar todas las entradas

martes, 19 de noviembre de 2013

Insertar Codigo Fuente Matlab y C# (personalizado) en Latex

Si ya vieron el post anterior sabrán como colocar el codigo fuente de Matlab o C# en latex, ahora lo que haremos es personalizarlo, si no te gusta la manera en la que se muestra te parece muy simple y quieres darle color o cambiar los aspectos, podemos ponerle un background con el color que deseemos etc.



Licencia Creative Commons
Este obra está bajo una Licencia Creative Commons Atribución-NoComercial 3.0 Unported.

Insertar Código Fuente de Matlab y C# en Latex usando el paquete listings

Estas redactando un informe o una tesis y necesitas incluir algún código ya sea de Matlab,  C#, VB  o cualquier otro y quieres que se vea tal cual ves en los propios programas, usando el paquete  listings es posible esto.

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[scaled]{beramono}
\usepackage[framed,numbered,autolinebreaks,useliterate]{mcode}
\usepackage{color}
\usepackage{upquote}
\usepackage{xcolor}
\usepackage{listings}
\usepackage{caption}
\lstset{language=Matlab,breaklines=true}
\begin{document}
\begin{lstlisting}[ label=codigo1,caption=Codigo Matlab]
CODIGO MATLAB
\end{lstlisting}
\lstset{language=[sharp]C,breaklines=true}
\begin{lstlisting}[label=some-code,caption=Codigo C$\sharp$]
CODIGO C#
\end{lstlisting}
\end{document}



Licencia Creative Commons
Este obra está bajo una Licencia Creative Commons Atribución-NoComercial 3.0 Unported.

viernes, 8 de noviembre de 2013

Insertar Graficos de Excel a Latex con alta calidad

Primero antes que nada tienen que saber como guardar una imagen en formato .eps esto se realiza a través de una impresora virtual, abajo se muestra como instalar una impresora virtual o si desean solo pueden instalar:

  •  (clic en la ultima versión, por ahora va por 9.10 y escoger  32 o 64 bits )
  •   (escoger 32 o 64 bits)


Que es el formato  .eps?
Los archivos eps son archivos PostCript encapsulados que mantienen la información de una imagen con mayor información de los colores, y curvas en los vectores.

Los archivos eps son los favoritos para descargar vectores de internet, pues al estar en ese formato sirven como vectores para Corel y vectores para Illustrator en cualquiera que sus versiones.

Para ver el post completo : http://ltx.blogspot.com/2003/11/cmo-crear-figuras-eps-desde-windows.html

Cómo crear figuras EPS desde Windows Esta es una pregunta que se me hace muy a menudo. Y como la respuesta es larga, he decidido escribirla aquí de una vez por todas. La pregunta puede aparecer bajo formas diversas, siendo una de las más frecuentes ¿Cómo puedo incluir una gráfica Excel en LaTeX? Tanto si se trata de una gráfica Excel como de cualquier otra gráfica generada con cualquier programa Windows, el procedimiento es el mismo (si bien la gráfica Excel a menudo presenta un problema particular que comentaré más adelante). Se trata de tener instalado un controlador de impresora PostScript (aunque no tengamos ninguna impresora real), y utilizar ese controlador para "imprimir a fichero". De este modo, el código que se enviaría a la impresora (PS) queda almacenado en un fichero que podrá ser usado como figura en LaTeX. Por desgracia, todos los controladores de impresora de windows que he podido probar (incluso los "oficiales" de Adobe) generan EPS malo, que requiere ser retocado posteriormente. Paso a describir el proceso.

1) Instalar impresora PS. Supondré que tienes instalado Windows XP. En otras versiones de Windows el proceso es análogo.
Ve a "Inicio->Configuracion->Impresoras y faxes" y añade una impresora nueva. Elige "Impresora conectada a este equipo", y cuando te pregunte el puerto al que está conectada, elige FILE: (imprimir a un archivo) En el modelo de impresora elige Apple Color LaserWriter 12/600. En realidad cualquier impresora PostScript sirve, pero yo siempre he usado esa y nunca he tenido problemas, así que ¿para qué cambiar? Finalmente ¡no la pongas como impresora predeterminada!
Una vez instalada la impresora, desde el panel de gestión de impresoras pulsa en la nueva con el botón derecho y elige "Propiedades". En la ventana que sale, en la pestaña "General" hay un botón que dice "Preferencias de Impresión". Púlsalo, y en la ventana que sale, pulsa en "Opciones Avanzadas". Esto abrirá una ventana nueva en el que se nos presenta una vista como de "árbol" con las opciones de la impresora. En la rama llamada "Opciones de documento", hay una rama llamada "Opciones Postscript", y en ella una opción llamada "Opción de salida postscript", a la que por defecto windows le ha dado el valor "Optimizar para velocidad". Debes cambiar eso por "Postscript Encapsulado (EPS)".

2) Generar el fichero PS. Ve a tu aplicación de dibujo favorita. Haz la figura y cuando la tengas lista, imprímela. Cuando te salga el diálogo de impresión, elige la impresora Apple que hemos instalado en el paso anterior, y dale a imprimir. En ese momento te pedirá un nombre para el fichero que va a generar. Dale el nombre que prefieras, y recuerda en qué carpeta lo has guardado. En unos segundos Windows habrá terminado la impresión, y en el fichero que has especificado tendrás la figura en formato EPS (si bien algunas versiones de windows insisten en ponerle al fichero una extensión .prn, sus contenidos son EPS, por lo que puedes renombrarlo sin problemas). Si los controladores no tuviesen bugs, aquí se terminaría la historia y el EPS resultante podría ser usado como figura en LaTeX. Por desgracia los controladores de windows tienen un importante bug, y es que no generan un BoundingBox correcto. El BoundingBox es un rectángulo que indica qué parte de la página es la que contiene realmente el dibujo. Para LaTeX esta información es importante, ya que calculará el espacio que ocupa la figura según su BoundingBox. Pero Windows incorrectamente hace el BoundingBox igual a la página completa, por lo que es necesario un paso adicional para arreglarlo.

3) Arreglando el BoundingBox. Para este paso necesitas la aplicación Ghostview, pero si estás tratando de insertar figuras EPS en LaTeX seguro que ya la tienes ¿verdad?. Basta que abras con ghostview el fichero que hemos generado en el paso anterior, y que elijas en el menú "File" la opción "PS to EPS". Esto te creará un nuevo fichero que (al menos en teoría) ya tendrá el BoundingBox correcto. Para verificarlo puedes visualizarlo en el ghostview, activando la opción "Show BoundingBox", que te dibujará un rectángulo punteado alrededor del BoundingBox. Si este rectángulo incluye ajustadamente tu figura, todo está correcto. Ya puedes incluir este EPS en un documento LaTeX. Si vas a procesarlo con PDFlatex, debes convertirlo antes en PDF, lo cual también puede hacerse desde ghostview
4) Otras consideraciones. Si el gráfico que intentas convertir ha sido creado con Excel, pueden aparecer problemas adicionales debidos a la propia aplicación Excel, ya que si se selecciona un gráfico en esta aplicación y se manda imprimir, el resultado muchas veces es incorrecto (zonas sin dibujar, zonas negras...), por lo que su conversión a PS también será incorrecta. La única solución que conozco a este bug consiste en copiar el gráfico desde Excel y pegarlo en otra aplicación (Word, por ejemplo), desde la cual se podrá imprimir ya sin problemas.
Por otro lado, existe un programa (shareware) llamado wmf2eps que es de ayuda si tienes que hacer muchos gráficos. Habrás comprobado que el método anterior de imprimir a fichero, renombrar resultado, abrirlo en ghostview y volver a guardarlo como EPS, puede resultar tedioso. El programa wmf2eps simplifica el proceso al permitirte seleccionar el gráfico en tu aplicación, "Copiarlo" y "Pegarlo" en el programa wmf2eps. Una vez allí pegado, pulsando un botón será convertido a EPS. En realidad este programa se limita a imprimir el gráfico a una impresora tipo PS (que por tanto debes tener instalada de todas formas), y seguidamente arreglar el BoundingBox.

Bueno aunque en el blog de arriba da una solución para corregir el bug del BoundingBox a mi no me funciono y aunque intentara muchas veces no me salio, así que la otra manera para solucionar este problema es:
1) Abrir el archivo .eps con el GSView 

2)Aquí tenemos dos opciones ,primero si no se ve la imagen completa tratar de que encaje cambiando el formato de hoja o las dimensiones, la cosas es tratar de buscar que la imagen se vea completa aunque este en una hoja mas grande de lo normal.

3) lo siguiente sera posicionarse con el mouse en una de las esquinas de la imagen y tomar las coordenadas que se indican seran (x1 , Y1) luego irse al otro extremo opuesto arriba y tomar las otras coordenadas (x2 , Y2)

4)Teniendo estas coordenadas, las anotamos en un papel o algo, luego abrimos el archivo .eps con el notepapd, el cual se abrirá y veremos todo el código de la imagen, buscaremos al inicio donde dice %%BoundingBox: 12 45 51 23 que apaareceran 4 numeros al costado, los que puse aquí son arbitrarios, puse cualquiera, en el de uds les aparecerá otros, borraran esos números y copiaran las coordenadas que copiaron en el papel, luego dan guardar y cierran el notepad.

5)Vuelven a abrir el archivo con el GSView y vera que la imagen esta bien encuadrada (y) y listo ahora solo quedar insertarlo en latex. Abrimos nuestro Texmaker y con el siguiente código basta, damos en  compilar y veremos  la gráfica de excel con la mejor calidad que puedan conseguir :D



El código para colocar la imagen .eps es: 

\documentclass{article} \usepackage{graphicx} \usepackage{epstopdf}
\begin{document}
\begin{figure}[!th] \centering \includegraphics[width=1\textwidth]{mi_imagen.eps} \caption{Mi Figura1} \label{fig:ejemplo1} \end{figure}
\end{document}


jueves, 12 de septiembre de 2013

El Numero de Dios, Solucion del Cubo Rubik en 20 Movimientos

Cada posición del Cubo de Rubik  puede ser resuelto en veinte movimientos o menos.
Con cerca de 35 CPU-años de tiempo de inactividad equipo donado por Google, un equipo de investigadores ha resuelto esencialmente cada posición del Cubo de Rubik , y han demostrado que hay una posición (la peor posición posible) requiere más de una veintena de movimientos. Consideramos que cualquier giro de toda la cara de ser un movimiento (esto se conoce como la media vuelta métrica.)

Cada solucionador del Cubo utiliza un algoritmo, que es una secuencia de pasos para resolver el cubo. Un algoritmo puede utilizar una secuencia de movimientos para resolver la cara superior, a continuación, otra secuencia de movimientos para posicionar los bordes de medias, y así sucesivamente. Hay muchos algoritmos diferentes, que varían en complejidad y el número de movimientos necesarios, pero los que se puede memorizar por un mortal requieren típicamente más de cuarenta movimientos.

Uno puede suponer Dios usaría un algoritmo mucho más eficiente, uno que utiliza siempre la secuencia más corta de movimientos; esto se conoce como algoritmo de Dios . El número de movimientos de este algoritmo tomaría en el peor de los casos se conoce el número de Dios. Por fin, el número de Dios se ha demostrado que es 20.

Tardó quince años después de la introducción del Cubo de encontrar la primera posición que demostrablemente requiere veinte movimientos para resolver, es conveniente que quince años después de eso, probamos que veinte movimientos son suficientes para todas las posiciones.

Si quieres aprender a armar el cubo rubik hay muchos tutoriales en la red les dejare unos cuantos:
http://www.rubikaz.com/resolucion.php
http://www.rubikaz.com/videotutorial.php
 http://www.youtube.com/watch?v=9KfBWQ9w-No
http://es.scribd.com/doc/21533/como-resolver-el-cubo-de-Rubik

Sin son mas osados y saben algo de programación les dejo un pdf que encontre es un proyecto para la creacion de un applet para la resolucion del cubo rubik esta totalmente detallado con todo el codigo:

http://www.mediafire.com/?uviqykaftyad9ri

Curiosidades del cubo Rubik

viernes, 18 de noviembre de 2011

Factorial de un numero en Matlab

Bueno aunque Matlab ya tenga una función para calcular el factorial de cualquier numero imagínate que esa función no existe y tienes que crear tu propio código, esta es la esencia para poder programar si aprendes lo  básico sera mucho mas fácil lo demas:

  • La función en Matlab es:

  • Sin usar la funcion:


 Descargar el m-file: http://www.mediafire.com/?anpdpf4sev29pus

Licencia Creative Commons
Este obra está bajo una Licencia Creative Commons Atribución-NoComercial 3.0 Unported.