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).





1- Empezando a Programar

Hoy vamos a hacer nuestro primer programa en python. Normalmente esto lo haremos en nuestro ordenador, con un editor de texto (como el notepad), un compilador, que es un programa que se encarga de convertir nuestras instrucciones para que nuestro ordenador las entienda. Pero por facilidad nosotros vamos a programar online, en una página creada específicamente para ello. La página en cuestion es http://ideone.com. También puedes acceder desde la lista de enlaces a la derecha.

Cuando entramos a Ideone, nos aparecerá esto:



































Nos aseguramos de elegir Python (la primera opción) como lenguaje de programación:




















Una vez hayamos elegido el lenguaje de programación vamos a crear nuestro primer programa. Lo que queremos hacer es que nuestro programa muestre un mensaje por pantalla. Para ello python tiene la palabra reservada print, que lo que hace es justamente eso. Por ejemplo: print "mensaje a mostrar" muestra por pantalla el mensaje a mostrar (Sin las comillas).


















Una vez que tengamos la instrucción presionamos Run. Si todo ha ido bien nos tiene que salir lo siguiente:









Primero nos muestra nuestro programa, el print "Bienvenido a mi Blog".
Luego nos indica si ha habido algún error. En este caso nos muestra "Éxito".
stdin lo ignoraremos por ahora.
Y finalmente, debajo de stdout nos muestra por pantalla el mensaje que le hemos indicado.
¡Ya tenemos nuestro primer programa!

¿Qué es Programar?

Mucha gente empieza a programar sin saber en realidad lo que es. Y cuando lo preguntas se suelen dar respuestas muy técnicas o abstractas, como la definición de la Wikipedia: http://es.wikipedia.org/wiki/Programaci%C3%B3n , "Es el proceso de diseñar, codificar, depurar y mantener el código fuente de programas computacionales",o como la definición  de la RAE, que hacen que te quedes igual que cuando empezaste.

Entonces, ¿Qué es programar? Programar es darle una serie de instrucciones al ordenador para que haga una tarea. Así de simple. ¿Y donde está el truco? El truco está en que esas instrucciones tienen que tener una sintaxis concreta. Esa sintaxis específica se llama lenguaje de programación. Hay muchos lenguajes de programación. Algunos son: C , C++ , C# , python , Java , Php etc. En este blog vamos a utilizar python, por ser bastante simple y suele estar recomendado para empezar a programar. Fue el primero que nos enseñaron en la carrera de informática ,así que parece el mas adecuado. Para ir a la página de python pinchar en la siguiente imágen:
 




miércoles, 15 de octubre de 2014

Presentación.

Este blog intenta ser una introducción para toda persona que quiera aprender a programar desde cero. Se requieren unos conocimientos mínimos de matemáticas. No hace falta descargarse ningún programa, ya que utilizaremos una página web para realizar los ejemplos.El lenguaje a utilizar será python.