domingo, 26 de octubre de 2014

6- Ejemplo programa

Una de las  frases que más he oído  cuando alguien quiere aprender a programar es: "A programar se aprende programando". Es algo que se cumple siempre, incluso entre expertos que quieren aprender alguna tecnología nueva. Sólo la teoría no es suficiente, así que vamos a poner un ejemplo de programa para poder sentar las bases de lo que hemos aprendido hasta ahora.


El programa propuesto es el siguiente:
El programa pide un nombre, apellido y edad.
Una vez recogidos los datos, analizaremos la edad. En caso de que el usuario sea menor de edad emitiremos un mensaje informándole de que no puede acceder al programa. En caso de que sea mayor de edad emitiremos el mensaje "Acceso aceptado" y daremos un mensaje de bienvenida. En caso de que el usuario tenga exactamente 18 años emitiremos el mensaje "Felicidades por su mayoría de edad" e igualmente emitiremos el mensaje de bienvenida.
Solución:




















Introducimos los datos en la pestaña input.
El texto (nombre y apellido) debe ir entre comillas, sino input() fallará.
Haremos una sentencia if por cada uno de los 3 casos. La salida en este caso nos tiene que dar:










Si cambiamos la edad a 18 años:







Si cambiamos la edad a 17 años:






Para no tener que reescribir el mensaje de bienvenida 2 veces podemos hacer lo siguiente:

5- La Sentencia if

Una vez tenemos los datos querremos hacer unas cosas u otras dependiendo de cuales sean esos datos. Por ejemplo: Si le pedimos la edad al usuario y la edad es menor de 18 años le decimos que no puede entrar. ¿Cómo se hace eso? Con la sentencia if. Es la sentencia más importante en casi cualquier lenguaje de programación. Veamos como se usa en python.

Ejemplo:

edad = 15

if edad<18:
        print "Eres menor de edad"



la fórmula general es  IF condicion:
Todo lo que esté tabulado debajo de la condición se ejecutará si se cumple la condición.
Si nos equivocamos en la sintaxis (Cómo olvidarnos de los dos puntos) nos dará un error de compilación. La palabra if (del inglés) es un condicional, es decir SI se cumple la condición de que edad es menor de 18 (edad < 18) se ejecuta lo que hay debajo. Si no se cumple no se ejecutara el código que esté debajo:

























Hemos cambiado la edad a 20 años, por lo que vemos que no muestra el mensaje por pantalla, ya que no se cumple la condición de que edad<18 y por lo tanto no se ejecuta la porción de código print "Eres menor de edad".

Las condiciones son siempre comparativas. Los signos que se usan son <,>,<= ,>=,==,!=
menor, mayor, menor o igual, mayor o igual, igual, distinto , respectivamente.
Analicemos el siguiente programa:

























Asignamos la edad a 31 en la primera linea.
Vemos que no se cumplen las condiciones  edad<18 (edad menor que 18) ni edad!=31 (edad distinta a  31) y se cumplen edad>18 (edad mayor a 18) y edad==31 (edad igual a 31).
Por lo que se muestran los menosajes "Eres mayor de edad" y "Tienes mi misma edad".
Si cambiamos la edad a 15 años:

























Vemos que se ejecutan los otros 2 mensajes.
¿Qué pasaría si asignamos la edad a 18 años?

4- Entrada del usuario

Hasta ahora hemos visto como mostrar cosas por pantalla (output), pero no hemos visto como recibir datos del usuario (input). Hay muchas formas en las que un usuario puede introducir datos a un programa, como consola, iconos, listas desplegables, etc. En Ideone.com tenemos un fichero de entrada en el que le pasaremos todos los datos:

















Haremos click en la pestaña "input" e iremos rellenando con los datos que queremos pasarle al programa.

¿Cómo recogemos los datos desde nuestro programa? Con la palabra reservada input()

variable = input()























Ejecicio: Introducir tu edad como input y mostrarla por pantalla:


























Y la salida:

























Propuesta de ejercicio:
Mostrar por pantalla el nombre, edad y sexo del usuario introducido como input.





Cómo no fomentar la programación entre los jóvenes

Si hace poco os mostraba un vídeo en el que se veía a grandes figuras de la tecnología como Bill Gates intentando fomentar la programación, ahora os enseño la respuesta del ministerio de educación de España.


El video es infame entre los programadores porque se ve a un actor tecleando aleatoriamente incoerencias. Si esta es la forma de estimular a alguien para que quiera programar mal vamos...

3- Variables

Las variables son espacio reservado para guardar datos. Estos datos pueden cambiar a lo largo del tiempo (de ahí lo de variable). Hay diferentes tipos de variables según lo que queramos almacenar. En python las variables se asignan de la siguiente manera:

numero = 100
numeroPreciso = 1000.0
nombre = "Paco"

La primera variable es un entero, la segunda un decimal y la tercera una cadena de caracteres.
Podemos elegir cualquier nombre para la variable, siempre que el primer carácter no sea un número. Si lo hacemos nos dará un error de compilación.
Podemos usar la palabra "print" para mostrar por pantalla las variables:
























Podemos operar las variables numéricas como si fuera una calculadora. Por ejemplo si queremos sumar dos números, numero1 y numero2 y asignarlo a otra variable haremos:























la variable tendrá ahora la suma de las otras dos variables.

También se puede operar con las variables cuando éstas son cadenas de caracteres, es decir, texto:























Los operadores más habituales para variables son:
+ (suma)
- (resta)
* (multiplicación)
^ (Potencia)
/ (División)

Para saber más sobre python y su sintaxis podéis comprobar este enlace con un tutorial:
http://mundogeek.net/tutorial-python/


2- Errores de compilación y mostrar varias líneas

En nuestra primera entrada en este Blog explicábamos que un programa debía codificarse con un lenguaje de programación que tenía una sintaxis específica. ¿Qué pasa cuando no seguimos esa norma? Qué cuando intentamos ejecutar el programa nos da lo que se llama un error de compilación. Es decir, el compilador (el programa que le traduce al ordenador lo que queremos hacer) no sabe lo que queremos hacer. Por ejemplo, supongamos  que queremos mostrar por pantalla un mensaje pero en lugar de escribir print "mensaje" ponemos la primera letra de print en mayúscula. Nos daría el siguiente error:

Error de compilación












Esto se debe a que python establece que para mostrar un mensaje por pantalla se tiene la palabra reservada "print", no "Print", por lo que el compilador nos indica que hay un error de sintaxis. Muchos de los errores de compilación son frecuentes por despistes o por programar con prisas. También hay errores más complejos que deberemos tener en cuenta en el futuro.

La palabra print agrega un salto de línea al final del texto que agreguemos entre comillas.
Así por ejemplo si queremos escribir varias líneas usaremos varios print consecutivos:

print "Este es una linea"
print "Esta es otra linea"
print "Esta es la última linea"


miércoles, 22 de octubre de 2014

¿Por que aprender a programar?


Alguna de las figuras mas importantes de la tecnología como Bill Gates , Mike Zuckerberg, e incluso algunos del mundo del espectáculo y del deporte cuentan como empezaron a programar y porque creen que es importante  y debería enseñarse en las escuelas(En inglés).