Ir al contenido principal

¿Que es la programación estructurada?



Solamente con estas tres estructuras se pueden escribir todos los programas y       aplicaciones posibles. Si bien los lenguajes de programación tienen un mayor repertorio de estructuras de control, estas pueden ser construidas mediante las tres básicas citadas.
Estructuras secuenciales Una estructura de control secuencial, en realidad, no es más que escribir un paso del algoritmo detrás de otro, el que primero que se haya escrito será el que primero se ejecute. 
Veamos un ejemplo: queremos leer el radio de un círculo, calcular su área y mostrar por pantalla al usuario el resultado.  En pseudocódigo sería: numerica: radio, area;  //Declaración de variables; 
inicio Escribir “dame el radio del circulo”; Leer radio // asignación del valor de la variable radio por el usuario por medio del teclado; área =3.14159*radio; //nosotros asignamos el valor de la variable área con su fórmula; Escribir “el área del circulo es:”    //OJO En los texto SI PODEMOS Y DEBEMOS PONER ACENTOS; Escribir área; // nos muestra en la pantalla el valor de la variable área resultado de la fórmula anterior; fin Como ven las instrucciones se van ejecutando unas detrás de otra hasta llegar al final. 

  Estructuras selectivas 

Estas estructuras se utilizan para TOMAR DECISIONES (por eso también se llaman estructuras de decisión o alternativas). Lo que se hace es EVALUAR una condición, y, a continuación, en función del resultado, se lleva a cabo una opción u otra. Alternativas simples (condicional IF) Son los conocidos "si... entonces". Se usan de la siguiente manera: yo quiero evaluar una condición, y si se cumple (es decir, si es cierta), entonces realizaré una serie de pasos. Un ejemplo En pseudocódigo sería:   numericas: numero, raíz inicio mostrar por pantalla “introduce un número” leer numero Inicio SI SI numero>=0 ENTONCES: // >=0 significa mayor o igual que cero; raiz=raiz_cuadrada(numero) mostrar por pantalla “la raíz cuadrada es:” mostrar por pantalla raíz                                                                                            fin SI fin Alternativas dobles (IF…….ELSE….) 

¿Qué pasa si no cumple la condición puesta?. Si no le decimos nada, el programa seguirá a la siguiente orden de forma secuencial. Pero también podemos especificar que pasaría si no cumple la condición. Es el famoso trío "si ... entonces ... sino esto otro". Veamos como sería la estructura en todos los lenguajes:  if (condición) {se hace esto} else {si no cumple la condición se hace esto otro} 
En el ejemplo anterior sería mucho mejor hacerlo con este tipo:                            En pseudocódigo numericas: numero, raiz fin declaración de variables inicio Escribir 'introduce un numero'  Leer número Inicio SI    SI numero >= 0 ENTONCES:    raiz = raiz_cuadrada(numero);    Escribir 'la raíz cuadrada es:' + raiz;    SINO Escribir 'lo siento, no puedo calcular la raíz cuadrada de un número negativo'                                                                                                          finSI fin Recuerda que si el número es menor de 0 sería negativo y no existen raíces de números negativos. Si te has fijado podemos poner Escribir "un texto" + variable (texto y a continuación aparecerá el valor de la variable en ese momento). Cuando escribamos nuestro programa, en lugar de pseudocódigo, debemos poner la condición de la siguiente manera: if numero >= 0 {raiz = raiz_cuadrada(numero); Escribir 'la raíz cuadrada es:' + raiz;} else { Escribir 'lo siento, no puedo calcular la raíz cuadrada de un numero negativo"} 
Fíjense que podemos escribir todas las órdenes que queramos dentro de los corchetes siempre separadas por ; 
Alternativas múltiples o con varias condiciones Es muy probable que tengamos la necesidad de incluir en nuestros programas alternativas con muchas opciones posibles. variableOpciones= un valor a elegir, por ejemplo desde el teclado o desde una 
ventana que marque el usuario; if (variableOpciones=0) {lo que corresponda};  if (variableOpciones=1) {lo que corresponda};  if (variableOpciones=2) {lo que corresponda}; 

Podemos poner tantas if como queramos. También existe la posibilidad de que deban de cumplirse dos condiciones a la vez: if (condición1 && condición2) {Se cumple esto} También con else: if (condición1 && condición2) {Se cumple esto} else {se cumple esto otro} Los símbolos && significan "y", es decir si se cumple la condición1 y la condición2 a la vez (las dos). Otro caso sería si se cumple una cualquiera de las dos condiciones: if (condición1 | condición2) {Se cumple esto} Como ves es el símbolo | (barra recta vertical del teclado = AltGr + 1) 

Estructuras Repetitivas o Bucles  DESDE o "FOR". Estas estructuras son instrucciones que se repiten formando un bucle (algo que se repite una y otra vez). A la variable que "lleva" la cuenta de las veces que el bucle se ha ejecutado, se le he llamado variable contador. La estructuras FOR tienen la peculiaridad, que la variable contador esta dentro del bucle y no hace falta asignarle el valor (ni definirla) fuera del bucle, y además, al llegar el programa al bucle siempre se realizarán las instrucciones que hay dentro del bucle, una cantidad de veces que nosotros fijemos. Hay varias, pero esta que explicamos es la más utilizada.  Vamos a suponer que estamos pensando en un programa que deba REPETIR algunas veces una acción.  Un ejemplo más concreto. El ordenador se ha portado mal, y como castigo, le vamos a hacer imprimir por pantalla 3000 veces la frase "Prometo ser bueno".  
¿Cómo lo hacemos? ¿Escribimos 3000 veces la instrucción pertinente?  ¡Se supone que el castigo es para la máquina, no para uno mismo! Veamos como sería el pseudocódigo: inicio Inicio Bucle Desde desde i=1 hasta i<=3.000 i=i+1; Escribir 'Prometo ser bueno';       fin desde; fin 

Como vemos la variable i (llamada contador) no se define antes del bucle, al entrar en el bucle i valdrá 1 (toma el valor inicial que le pongamos en el primer igual, en  nuestro caso i= 1. Después le decimos hasta que valor de i se repetirá el bucle, en nuestro caso hasta que i valga menos o igual a 3000. Posteriormente ponemos  cuanto aumenta la variable, en nuestro caso añadimos 1 al valor de la variable i; i = i + 1. Al final ponemos las órdenes que queramos que haga el programa cada vez que haga el bucle; en nuestro caso escribir en pantalla "Prometo ser bueno". Como ves la primera vez que entra el programa en el bucle i vale 1, después i vale 2 (se le suma 1) y después escribe la fase. Antes de salir del bucle vuelve a evaluar la condición para ver si la sigue cumpliendo, si es así vuelve hacer el bucle entero. ¿Es así? Claro porque i=2 sigue siendo menor de 3000. Pero ojo la segunda vez que hace el bucle i tomará el valor de 3, ya que le sumará 1 al valor que tenía, y recuerda que como ya hizo el bucle una vez ahora i = i + 1 será 3; ya que i = 2 +1.  Ven que cada vez que hace una vez el bucle el valor de i aumenta 1. Esto es lo que se llama "el paso". Podríamos hacer el bucle con paso 2 simplemente haciendo i = i +2. Bueno siguiendo con el bucle, resulta que este bucle se repetirá hasta que i valga iguala o menor de 3000. Bueno pues en todas esas repeticiones el 
ordenador escribirá la frase: Prometo ser bueno.  Castigo cumplido. En lenguaje de programación real las estructuras For se forman: for ( i = 1 ; i<= 3000 ; i = i + 1)  A veces podrás ver esto: for ( i = 1 ; i<= 3000 ; i++)  i++ significa lo mismo que i = i +1; es especificar el paso 1 de i pero de otra forma, nada más. Recuerda en programación real se usa la palabra for, y no desde. Y normalmente la variable en lo bucles for se llama i. ¿Y si quisiéramos poner un paso decreciente? Es decir que el valor de i fuera disminuyendo cada vez que se repite el bucle. Es muy sencillo poniendo i = i 1

Comentarios

Entradas populares de este blog

¿Que tipo de lenguaje utiliza pseint?

Podemos decir que el  lenguaje que utiliza pseint es C++ y es un lenguaje copilado.

¿A qué llamamos pseudocódigo?

El pseudocódigo es una forma de escribir los pasos, pero de la forma más cercana al lenguaje de programación que vamos a utilizar, es como un falso lenguaje, pero en nuestro idioma, en el lenguaje humano. Por ejemplo si queremos escribir algo en pantalla, en pseudocódigo podríamos poner:  Escribir "Hola" o Escribir 20+30.  También podemos usar:  mostrar por pantalla "Hola"  Realmente el pseudocódigo lo podríamos escribir como nosotros quisiéramos, ya que realmente no es el programa en sí, solo es una ayuda para posteriormente realizar el programa mediante el lenguaje de programación que utilicemos, eso sí, es de gran ayuda, tanto que es imprescindible. Pero aunque lo podamos escribir de cualquier forma, la mayoría de los programadores suelen usar un vocabulario en común. Si sabes hacer el pseudocódigo del programa, pasarlo a cualquier lenguaje de programación es muy sencillo, solo tendrás que aprender los comandos equivalentes a las instrucciones en pseudocód...

¿Que es un lenguaje de programación?

Un  lenguaje de programación  es un lenguaje diseñado para describir el conjunto de acciones consecutivas que un equipo debe ejecutar. Por lo tanto, un lenguaje de programación es un modo práctico para que los seres humanos puedan dar instru cciones a un equipo.   Los lenguajes de programación generalmente se dividen en dos grupos principales en base al procesamiento de sus comandos: lenguajes imperativos y lenguajes funcionales. Lenguaje imperativo Un  lenguaje imperativo  programa mediante una serie de comandos, agrupados en bloques y compuestos de órdenes condicionales que permiten al programa retornar a un bloque de comandos si se cumple la condición. Estos fueron los primeros lenguajes de programación en uso y aún hoy muchos lenguajes modernos usan este principio. No obstante, los lenguajes imperativos estructurados carecen de flexibilidad debido a la secuencialidad de las instrucciones.  Lenguaje funcional Un  lenguaje de programación fun...