Teoría

Introducción a la programación.

Números, fórmulas y resultados

La base de la matemática son los números. Si uno escribe 0 cualquiera puede entender que nos referimos al cero. Lo mismo pasa con 1, 20 ó 45. Pero ¿ qué pasa si escribimos 1 + 1? Simple, todos sabemos que uno más uno es dos. Lo interesante acá es que hemos logrado expresar al dos sin escribir 2 en ninguna parte. Lo hicimos a partir de una fórmula, calculando cuánto daba la suma de 1 más 1. Decimos que el más es un operador, el de la suma, pero hay otros: el operador resta (-), el de multiplicación (*) y el de división(/) son ejemplos básicos.
Veamos otra fórmula:

2+3*4

Esta vez, tenemos que recordar que la multiplicación tiene prioridad sobre la suma, por lo que se resuelve primero. Es decir, los anterior es equivalente a :

2+(3*4)

Lo cual a su vez equivale a 2+12, ya que 3*4 es 12. Luego, el resultado final es 14. Una vez más, hemos expresado a un número (el catorce) sin escribirlo explícitamente, y hemos podido llegado a el reduciendo la fórmula original, achicandola de un paso a la vez.
Además, en matemática contamos con variables, que sirven para denotar números que no se sabe en principio cuánto valen. Por ejemplo, si vamos a comer entre cuatro amigos y llega la hora de pagar la cuenta, sabemos que a cada uno le tocará pagar

x/4

Donde x es  el precio total de la comida, no hace falta saber a priori cuánto será el total para saber la cuenta que hay que hacer, para cualquier comida siempre dividimos el total por 4. Ahora si, si mañana vamos y gastamos 40, haremos 40/4 y cada uno pagará 10, o si gastamos 80 haremos 80/4 y cada uno pagará 20. Lo útil es que la fórmula aplica para cualquier precio.
Ahora, ¿qué pasa si tampoco sabemos cuántos comensales seremos? Podemos tomar la ecuación de arriba y cambiar el 4 por una variable:

x/y

Donde x sigue siendo el precio total e y es ahora la cantidad de comensales. Si sabemos que seremos cuatro, como en el ejemplo original, nos queda x/4, como era de esperarse.

Expresiones y reducciones

Pasemos ahora al aspecto técnico. Diremos que una expresión es una combinación de números y variables mediante operaciones. Ejemplos de expresiones son:


La expresiones suelen poder reducirse a otras equivalentes pero más sencillas. Cuando no pueden reducirse más decimos que son irreducibles. En el ejemplo anterior, la expresión 0 representa al cero, y no puede reducise más. 2+2 en cambio, se reduce a 4 y ahí aya no puede reducirse más. Decimos entonces que 2+2 evalúa a 4. x+1 en cambio, no puede reducirse a un número ya que a priori no sabemos cuánto vale x. (x-x)+1 por otro lado, puede reducirse a 0+1, luego 0+1 se reduce a 1. Entonces podemos decir que (x-x)+1 evalúa a 1.
Existen expresiones que no evalúan a nada, como por ejemplo 20/0, ya que no se puede dividir por cero. También debemos cuidarnos de las cosas que parecen expresiones pero no lo son, por estar mal escritas, como por ejemplo:



Programas

Un programa no es muy distinto de una serie de expresiones matemáticas escritas una atrás de la otra, con números, variables y operaciones. Al correr el programa, las líneas se han de ejecutar en orden, una a la vez, como si las fueramos poniendo en una calculadora. Dicho de otra manera, un programa es una lista de operaciones que deben seguirse en orden para poder realizar un cálculo (de manera similar a lo que la receta de cocina es a un postre). Veamos un ejemplo bien simple:

x=5
print (x)

Nos preguntamos ¿qué hace este programa al ejecutarse? Lo primero que vemos es que el programa tiene dos líneas, lo primero que se calcula es la primera línea, x=5 y luego la segunda print(x).
Una de las diferencias más notorias entre la matemática y un programa es que en el caso de los programas, las variables pueden tener un valor en cierto momento y otro distinto luego, algo que no pasa en matemática.
En este caso, la primera línea se lee así: a la variable x le asignamos el valor 5, no significa que x y 5 son lo mismo, ni son iguales, lo que significa es que en la variable x va guardado el valor 5 a partir de esa línea hasta que la otra línea cambie el valor. Después, de pasa a ejecutar a la segunda línea print(x), que se lee así: mostrar el valor de x en la pantalla. Como a x se le ha asignado el valor 5, en pantalla se mostrará un 5. Después de eso no hay más líneas de código así que el programa termina. Nótese que x es tan solo el nombre que tiene la variable dentro del programa, y el usuario eso no lo ve.

Cadenas

Además de los números, nos será útil trabajar con texto. Para eso vamos a utilizar las cadenas. Una cadena es simplemente una tira de símbolos (como los que vemos en el teclado de una computadora y algunos más). Las cadenas se escriben entre comillas, veamos algunos ejemplos:

"Soy una cadena"
"Veinticinco"
"25"


Es importante notar que la computadora distingue entre el número 25 (escrito sin comillas) y la cadena "25". Si utilizamos la expresión sin comillas, nos estaremos refiriendo al número, y si utilizamos las comillas, nos estaremos refiriendo a la cadena de longitud 2, compuesta por los símbolos 2 y 5. A la hora de hacer cuentas, podremos hacerlas sólo cuando trabajemos con números y nunca con cadenas.
Veamos cómo escribir un programa que le pide al usuario una cadena y la muestra en pantalla:

x=input("Ingrese su nombre")
print("el nombre ingresado es")
print(x)

En este caso, la primera línea del programa indica que al ejecutarse,

x=input("ingrese su nombre")

se asignará a la variable x la cadena que ingrese el usuario, y a su vez la cadena "ingrese su nombre" es el texto que se mostrará al usuario al momento de ejecución, para que sepa qué dato se le está pidiendo.
Luego tenemos al mismo print(x) que teníamos antes, pero precedido por un prin("El nombre ingresado es"), que sirve para que en la pantalla se lea al terminar "El nombre ingresado es" y luego el valor de la variable x, que fue asignado con la cadena que ingresó el usuario.
Inicialmente, vamos a esquematizar a los programas dividiéndolos de la siguiente manera:
1. Entrada de datos.
2. Cálculo y procedimiento.
3. Salida de resultados.
Por ahora, vamos a hacer programas que sirvan para resolver cuentas, como una calculadora. Más tarde, iremos introduciendo de a poco otras aplicaciones de los programas.

Programas en Python
A la hora de escribir programas en una hoja de papel, uno puede tomarse ciertas licencias porque en esos casos no hace falta que el programa sea entendido por una computadora. Pero cuando quiero que así sea, es necesario escribir los programas en un lenguaje de programación real. En nuestro caso, el lenguaje es Python. Este lenguaje es relativamente sencillo de entender comparado con otros lenguajes de programación como C o Java, sin embargo, como todo lenguaje de programación, se deben respetar estrictamente sus reglas o de lo contrario, la computadora no será capaz de entenderlo.

No hay comentarios:

Publicar un comentario