INTRODUCCIÓN A LA PROGRAMACIÓN
Los ordenadores, móviles y otros dispositivos electrónicos funcionan realizando una serie de operaciones en un orden determinado.
A esa lista de órdenes se le llama programa informático.
Para darle esas órdenes al ordenador hay que emplear un lenguaje de programación.
La lista de operaciones que resuelven algún problema paso a paso, se llama Algoritmo.
A menudo utilizamos algoritmos en nuestra vida cotidiana para resolver algunos problemas, realizando un conjunto de tareas ordenadas.
Para hacernos un vaso de leche con cacao seguimos los siguientes pasos:
1º Sacamos la leche de la nevera
2º Cogemos un vaso y una cuchara
3º Cogemos el cacao
4º Echamos leche y cacao en el vaso
5º Removemos con la cuchara
Esta lista de pasos constituye un Algoritmo.
Un programa informático está compuesto de varios algoritmos
Los algoritmos pueden representarse de varias formas, con frases, como en el ejemplo anterior, mediante gráficos, etc.
Una de las maneras más habituales de representar algoritmos es mediante diagramas de flujo.
Los diagramas de flujo son unos símbolos conectados de arriba a abajo, que representan ordenes que damos al ordenador, según su forma, realizan distintas funciones.
Tabla de símbolos básicos utilizados en los diagramas de flujo
Ejemplo: El diagrama de flujo del ejemplo anterior sería el del margen 👉
Hay veces en las que tenemos que tomar decisiones a lo largo del diagrama, para eso tenemos que utilizar el bloque de Decisión.
En el caso del ejemplo del vaso de leche con cacao, podríamos modificar el final del algoritmo para incluir un bloque de decisión que nos permita decidir si hay suficiente cacao en el vaso o no.
Cuando realizamos un algoritmo, tenemos que tener cuidado de no cometer errores pensando muy bien lo que se hace en cada uno de los bloques o pasos.
Ejemplo: Hemos tenido que separar el bloque "Echamos leche y cacao en el vaso" por dos bloques, "Echamos leche en el vaso" y "Echamos cacao en el vaso", ya que si no hubiese suficiente cacao, añadiríamos más leche, pudiendo llegar a derramarse la leche.
En algunos algoritmos pedimos datos o sacamos datos por la pantalla, para ello utilizamos el bloque Entrada / Salida.
¿Puedes describir el algoritmo que se representa en el diagrama de flujo del margen? 👉
A veces necesitamos repetir ciertas acciones varias veces por lo que existen estructuras de repetición o bucles:
Las estructuras de repetición sirven para hacer algoritmos más cortos. Existen dos tipos:
Repetición para siempre
Es el caso del primer ejemplo del margen. 👉
La luz se está encendiendo y apagando indefinidamente.
Este tipo de estructura no tiene bloque de FIN.
Repetición un número de veces
Es el segundo ejemplo del margen. 👉👉
La luz parpadea 10 veces cada segundo y luego el algoritmo termina.
Vídeo resumen sobre el concepto de algoritmo
Hasta ahora hemos visto como crear algoritmos con frases en nuestro lenguaje, pero como dijimos al principio, el lenguaje que entienden los ordenadores y los robots no es el mismo que el nuestro.
El lenguaje que utilizan los equipos para comunicarse entre sí se denomina lenguaje máquina. Este lenguaje consiste en una serie de ceros y unos (datos binarios) que no es comprensible para las personas. Es lo que se denomina lenguaje de bajo nivel.
Cuando una persona escribe un programa, lo hace en un lenguaje de alto nivel, que es comprensible para la misma, pero que tiene que ser transformado en código máquina para que el ordenador pueda interpretarlo.
El compilador o intérprete es el encargado de traducir a código máquina las órdenes que escriben las personas.
Hay muchos lenguajes de alto nivel, unos destinados a un tipo de programas y otros más generales.
Existen lenguajes de programación de tipo texto (Los más usados hoy en día son Java, Python y C++) y lenguajes de programación visuales (También llamados lenguajes gráficos o lenguajes pro bloques).
Un ejemplo de estos lenguajes visuales que se usa mucho en el ámbito educativo es Scratch.
En el siguiente vídeo de Youtube podemos ver un resumen del tema:
Para terminar, vamos a realizar algunos retos que nos propone Eduardo Molina: