Programación para todos: Pseudocódigo

in #programacion7 years ago (edited)

Sigamos aprendiendo


Ya queda poco para comenzar a escribir nuestros propios códigos de programación. Estudiamos y descubrimos el algoritmo, el cual es el principal método mediante el que se escriben instrucciones en los programas.

Nos falta comprender dos conceptos para poner manos a la obra: lenguajes de programación y pseudocódigo.

¿Quieres comprender desde cero las bases de todo lo que leerás a continuación?, para ello lee los siguientes artículos:

Lenguajes de programación


Ya hemos mencionado más de una vez que la computadora comprende el lenguaje de código binario. De esta forma podemos darle todo tipo de instrucciones a la computadora , pero es muy poco eficiente, además de complejo. Con el propósito de resolver este problema existen los lenguajes de programación.

Un lenguaje de programación es un lenguaje formal, mediante el cual se escriben las instrucciones que ejecutará la computadora.Estos lenguajes tienen reglas y sintaxis definidas y formales, con ciertos niveles de abstracción, para que el usuario humano pueda interactuar con la computadora. Existen distintos niveles de lenguajes de programación, principalmente de bajo y alto nivel.

Lenguaje de bajo nivel: son los más próximos a la arquitectura del hardware, es decir, los que la computadora utiliza de manera más directa. En esta categoría encontramos al código binario.

Fuente

Lenguaje de alto nivel: más cercano a programadores y usuarios, se asemejan al lenguaje humano utilizando letras y palabras, en su mayoría en inglés.

Código propio

Entonces, ¿cómo la computadora comprende lenguaje de alto nivel?

Pues...no lo entiende, así es que se utilizan intermediarios: compilador e intérprete. Ambos son programas informáticos que se encargan de la misma tarea , traducir el lenguaje de programación a código máquina, para que así la computadora pueda ejecutar las instrucciones.

Pseudocódigo

Antes de comenzar a estudiar e intentar comprender lenguajes de programación debemos manejar un concepto, el pesudocódigo. Corresponde a la descripción de un algoritmo en forma de lenguaje de programación, pero con una sintaxis informal y no determinada.

Imagen propia

No se utilizan pseudocódigos en una computadora, pero es una buena forma de escribir previamente la lógica de un programa sin haber establecido el lenguaje de programación que se utilizará.

Conceptos y elementos

Cuando se escribe un programa, existen variados conceptos básicos a utilizar, independiente del lenguaje. Aquellos son los siguientes:

Variable


Elemento que aloja un valor, y que es utilizado durante la ejecución del programa. Las variables pueden ser manipuladas, cambiando su valor cuantas veces sea necesario, de ahí su nombre.

Por ejemplo: Quiero saber cuántas manzanas hay en la cocina, para ello tomo una libreta , voy a la cocina y cuento las manzanas. Anoto en mi libreta: cantidad de manzanas = 10.

variable cantidadDeManzanas=10;


La cantidad de manzanas que anotamos corresponde a una variable, y a medida que vayamos comiendo manzanas el valor de la variable cambiará.

Fuente

Arreglo


Conjunto o colección finita y ordenada de elementos. Por ejemplo, podemos escribir un arreglo con nuestras películas favoritas.

arreglo misPeliculas=[PrincesaMononoke,Interestellar,ElSeñorDeLosAnillos];

Función


Corresponde a una sección de código que cumple con una tarea de forma independiente, y puede ser llamada cuantas veces sea necesario. Una función tiene tres componentes fundamentales:

  • Argumentos o parámetros: son variables que la función utilizará para ejecutar el código.
  • Código: Instrucciones que la función llevará a cabo.
  • Valor de retorno o resultado: es el valor final que nos entrega la función, el resultado de sus instrucciones.

Ejemplo:


función sumar(argumento1,argumento2){
    	resultado=argumento1+argumento2;
    	retornar resultado;
}

Estructuras de control


Definen el flujo de ejecución de las instrucciones, es decir el orden y la forma en que funciona el código.

Estructura secuencial


Secuencia de instrucciones fijas que se ejecutan en orden, de arriba hacia abajo.


instrucción1;
Instrucción2;
Instrucción3;

Ejemplo:


Cojer pala;
Barrer basura;
Cojer pala;
Botar basura;

Estructura selectiva


Instrucciones que se ejecutan si una condición se cumple o no.


Si (condicion) entonces{
 	instrucciones
 	Fin
}
  

Ejemplo:


Si (colorClara=blanco) entonces{
  	Apagar cocina;
  	Comer huevo;
  	Fin;
}
 

Estructuras iterativas


Las instrucciones se ejecutan múltiples veces según ciertas condiciones. Son los llamados loops o bucles, y cada vez que se ejecuta el bloque de instrucciones es llamado iteración.

Bucle mientras

Las instrucciones se ejecutan mientras se cumple una condición.


Mientras (condicion) hacer{
	instrucciones
	Fin
}

Ejemplo:


Mientras (edad<40) hacer{
	Crecer peloCabeza;
	Fin
}
Bucle para

Es el conocido ciclo for. Utilizado para ejecutar instrucciones (iterar) un número conocido de veces. Para ello se toma una variable, se fija un valor inicial, y por cada iteración se le asigna un paso, es decir un cambio en esa variable. Hasta que la variable cumpla cierta condición se ejecutarán las instrucciones.


Para  (variable=valorInicial) hasta (valorFinal) con paso (variable+1) hacer{
  	Instrucciones;
  	fin;
}

Ejemplo:


Para  (edad=0) hasta (40) con paso (edad+1) hacer{
	Crecer pelo;
	fin;
}

Veamos un ejemplo


Uff, bastante información, ¿no?, ¡veamos un ejemplo para comprender lo anterior!.

Queremos mejorar nuestra condición física, por lo que iremos a entrenar:

Imagen propia

Analicemos el código anterior: El flujo de ejecución de las instrucciones es de arriba a abajo, no olvidemos que estamos escribiendo un algoritmo.

  1. Primero, definimos las variables involucradas en el programa.
  2. Luego comienza la ejecución de las instrucciones. El primer paso es una selección, si el clima está soleado, entonces nos ponemos una gorra y se pasa a la siguiente instrucción. Si no se cumple la condición saltamos a la siguiente instrucción.
  3. Queremos caminar por 30min(1800seg), de modo que mientras el tiempo de nuestro cronómetro sea menor a 1800 seg, caminamos. Cuando el tiempo sea mayor o igual a 1800 seg, pasamos a la siguiente instrucción.
  4. Secuencialmente, tomamos una pesa, y la acomodamos para ejecutar un ejercicio.
  5. Desde un valor inicial de 0 repeticiones, hasta que sean diez , levantaremos la pesa. Cada vez que levantamos la pesa sumamos una repetición.
  6. Tomamos la pesa y la guardamos.

Ejercicio: Escribir cualquier acción de la vida cotidiana en forma de pseudocódigo.

¡Listo!


Prácticamente, ya estuvimos escribiendo códigos de programación, tal como se hace con un lenguaje, de modo que, con lo que hemos aprendido ya somos capaces de escribir programas. El único paso que hace falta es aprender un lenguaje y su sintaxis, ¡lo cual veremos en el siguiente artículo!.

Material complementario


Para estudiar este tema, pueden complementar esta información con las siguientes fuentes:

Materiales didácticos


Recibimos muy buenas sugerencias en los comentarios de artículos anteriores, por parte de @julioccorderoc y @amaponian, que corresponden a los siguientes materiales:

¡Gracias por sus aportes!.

En la próxima entrega comenzaremos a estudiar el lenguaje de programación Python, para posteriormente, ¡escribir nuestro primer programa!.

Gracias por leernos, un fuerte abrazo, ¡nos vemos!.

Equipo de desarrollo cervantes

Sort:  

Hay una herramienta muy sencilla para introducirse en el mundonde la programación, incluso para niños a partir de los seis años: Scratch, https://scratch.mit.edu. Espero les sea útil a todos aquellos que comienzan.

Gracias por la acotación!. Efectivamente, esa es la herramienta mencionada en el artículo. Saludos

No me di cuenta que estaba listado en los materiales didácticos! disculpa. Para enmendarme envío otro recurso muy interesante para aprender a programar de forma entretenida: Code Combat Game, https://codecombat.com/play.

Se trata de aprender a programar a través de un videojuego. Aquí la página oficial con la descripción: Code Combat

excelente trabajo @cervantes sigue asi

Muchas gracias por el apoyo!

Saludos.

Estas es una de las cosas que me gustaría aprender hacer, tengo algo sencillo como primer reto personal. Estas instrucciones son de mucho valor para quienes como yo están en cero. Gracias por el aporte.

Nos alegra mucho ser de ayuda.

Si lees todos los artículos en el orden expuesto al inicio del post puedes estudiar desde cero.

Saludos!, gracias por tu comentario.

La programacion es todo un mundo de retos y lenguaje complejo... Para los que lo conocen y saben interpretar supone una enorme oportunidad de comunicacio efectiva. De alli su valor, quien tiene el conocimiento tiene el poder. Arriba muchachos, aprendamos a programar! Comuniquemonos mejor!

Toda la razón, el poder comunicativo que ha dado la informática y la programación ha cambiado incluso la forma en que funciona el mundo.

Saludos!, gracias por el comentario.}

I dont understand your language, but how ever, i was attracted by your name. happy steeming
its your blockchain entertainer
@michaelcj founder of @steemcamp

INTERESANTE POST...

RECUERDO CUANDO COMENCÉ A PROGRAMAR EN PASCAL

JEJEJEJE

Que bien poder evocar esos recuerdos jeje.

Gracias por el comentario, saludos!

Que buen trabajo hacen!! Saludos

Muchas gracias!.

Saludos

¡Muy buena publicación y excelentemente explicada! Hasta dan ganas de sentarse a aprender a programar para ganarse la vida. Felicito al Equipo de Desarrollo Cervantes.

¡Muchas gracias!, que alegría que nuestros aportes den tal inspiración y ayuda.

Saludos!, te esperamos el otro miércoles.

Excelente post, cosas que no sabía del todo y que ahora comprendo muy bien; excelentes ejemplos y redacción, no pude parar de leer hasta terminarlo.

Nos alegra mucho brindar tal ayuda.

Saludos, ¡gracias por el comentario!

me gusto mucho.. tienes una forma muy pedagofica de explicar algo tan importante.. solo un poco mas de dinamica y seras el mejor en lo que haces .. te felicito

¡Gracias!, seguiremos trabajando para mejorar la calidad de los artículos .

Saludos.

Personalmente creo que ARRAY habría que traducirlo por VECTOR o MATRIZ, en tu caso el "arreglo" de películas favoritas es un vector. A mi "arreglo" me parece siempre "reparo" del verbo reparar.

pero esa es la forma en la que se les llama en programación, de hecho tengo entendido que vectores y matrices no existen como tal si no que son, arreglos unidimensionales (vectores) y multidimensionales (matrices)

Eso es porque los informáticos en vez de usar el español usan spanglish y traducen mal, se usa vectores y matrices, de toda la vida en matemáticas, en español si quieres puedes traducir por matriz todo, ya que un vector sólo es una matriz de una fila o columna.

Es verdad, son vectores y matrices en matemáticas, pero hay un detalle: Esto no es matemáticas, son objetos con diversos usos. Un vector es solo un objeto matemático, que es distinto a un arreglo. Un arreglo es como está definido en el artículo, en cambio un vector o una matriz cumplen con muchas propiedades matemáticas que un arreglo no cumple. Gracias por el comentario!

¡Excelente! ¡Me encanto esta información!

¡Gracias!, nos alegra ser de ayuda.

¡Un saludo!

Gracias por mencionar mi aporte.
Buen artículo.
Saludos.

Siempre trabajaremos en conjunto con la comunidad, considerando sus aportes y comentarios.

Gracias, un saludo.