Un juego de naipes 2011-03-30 Ya estamos en posición de dar un paso más interesante en nuestro cursillo de programación, creo que es momento de emprender un proyecto de mayor envergadura. Para que sea entretenido vamos a desarrollar un juego de cartas clásico: Black Jack. Durante los próximos capítulos vamos a aprender a trabajar con el azar y modelaremos un programa que permita jugar naipes con el computador. La Baraja Partamos por lo básico, los naipes, ¿cómo representaremos los naipes en nuestro programa? ...
Listas 2011-03-29 Hasta ahora hemos trabajado con expresiones y funciones que operan con unos pocos argumentos. Pero, ¿cómo podríamos crear una función que calcule el promedio de una lista de números? Para operar con una gran cantidad de datos debemos usar otras estructuras, en el caso de python una de estas estructuras son las listas. Las siguientes son listas en python: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] ['a', 'b', 'c', 'd', 'e'] ['a', 1, 'b', 2, 'c', 3] Podemos ver el largo de una lista usando la función len, y por supuesto podemos asignar listas a variables: ...
Funciones 2011-03-28
Sobre el Código Fuente que generamos en este Blog 2011-03-27 Tódo el código escrito en los apuntes de este blog se encuentra disponible en este repositorio en github: https://github.com/lnds/programando.org Si quieres descargarlo puedes hacerlo directamente usando los enlaces de ese sitio, o puedes usar GIT, la herramienta de control de versiones distribuida. Hace un tiempo escribí dos notas sobre control de versiones en La Naturaleza del Software: Sistemas de Control de Versiones Control de Versiones Distribuidos ...
Rotaciones 2011-03-26 Cada cierto tiempo voy a escribir un articulo más avanzado, orientado a mis amigos programadores profesionales, donde introduciremos un problema de mayor complejidad, estos quedarán almacenados bajo la categoría de Técnicas Avanzadas. Este artículo lo escribí en 2006 en una versión que no prosperó de programando.org, ahora lo reciclé, aproveché de corregir algunos errores, reclasificarlo, y además le incorporé un par de ejercicios. Un problema simple de formular, pero no tan simple de resolver, es rotar un arreglo A de N elementos en i posiciones hacia la izquierda, en un tiempo proporcional a N, y usando pocos bytes extra. ...
Reflexiones 2011-03-24 ¿Qué sentido tiene escribir otro tutorial de python si hay millones en internet? Ninguno. Pero no estoy escribiendo un tutorial de python, aunque se parezca mucho a eso. La idea de programando.org es enseñar a programar bien (*). Sucede que cuando partí decidí ampliar este objetivo e incluir a aquella persona que no sabe nada de programación y quiere aprender. Lo ideal para aprender a enseñar a hacer algo bien es enseñarlo bien desde el principio. ...
Cadenas de caracteres 2011-03-22 Los 140 caracteres que usas para escribir un tweet, el texto que escribes en tu estado en facebook, un mensaje de texto enviado desde tu teléfono móvil, un correo elestrónico, el texto de este post, una novela, una entrada en wikipedia, este mismo párrafo, todos esos son cadenas de caracteres. A una cadena de texto los programadores las llamamos string. Cada uno de los elementos de la cadena es un carácter. ...
Comparaciones y expresiones lógicas 2011-03-21 Bien, espero que hayan estado experimentando con IDLE, el ambiente interactivo de Python. Volvamos a él y hagamos algunos experimentos. >>> n = 10 >>> n 10 >>> n > 0 True >>> n < 0 False La primera expresión es familiar, corresponde a la asignación de una variable, en este caso n, con el valor 10. La segunda expresión nos permite ver el valor de n. Luego comparamo n con 0, es decir, queremos ver si n es mayor que 0, lo que es cierto, python responde con el valor True (verdadero en inglés). ...
Primeros pasos en Python 2011-03-20 Vamos a empezar a usar python como nuestro entorno de programación. Python provee un ambiente interactivo llamdo IDLE y es el que vamos a usar en nuestros primeros pasos. Yo usaré XUbuntu (una variante de Ubuntu Linux) y Windows 7 como mis sistemas operativos para este curso. En ambos voy a instalar Python 3. En XUbuntu (y Ubuntu también) puedes instalar Python IDLE usando el Ubuntu Software Center. En Windows descargas el instalador de Python 3 en www. ...
El lenguaje apropiado 2011-03-14 Elegir el lenguaje apropiado para aprender a programar no es tarea fácil. Cualquier decisión puede ser objetada por diversas razones. En mi primer programa usamos javascript pues es, probablemente, el lenguaje de programación más difundido al estar disponible en todo navegador de internet. Sin embargo, aunque javascript es un lenguaje poderoso y se puede desarrollar perfectamente con él (a niveles que muchos programadores profesionales no sospechan), puede no ser el más apropiado para dar nuestros primeros pasos en la programación. ...