1.1 Objetivos del tema.
Hemos visto lo que es la estructura de un programa, los datos, que esos datos en realidad se convierten en variables de distinto tipo dentro de un programa, y que esas variables generan o creamos con ellas expresiones.
Ahora, una vez que tenemos expresiones, hay que utilizarlas para algo, las expresiones pueden ir de forma aislada o formar parte de las instrucciones de un programa.
1.2 Introducción.
Un programa se construye a base de escribir una serie de instrucciones propias del lenguaje que utilizamos y con el fin de poder llegar a que ese programa realice la labor para la cual se ha diseñado.
Las instrucciones de un lenguaje de programación son las que nos permiten crear la estructura del programa.
En los programas vamos creando bloques con las instrucciones, de forma que a base de ir sumando bloques llegamos a construir un programa más o menos complejo.
El mejor ejemplo podríamos verlo en un edificio.
Un edificio se construye a base de ir añadiendo ladrillos, muchos ladrillos, que se apoyan unos en otros.
Un programa se puede ver como algo similar.
Pero un edificio se sustenta sobre una estructura.
A nivel de programación, esa estructura se basa en los procedimientos y funciones que escribimos en el programa, y esos procedimientos, funciones y métodos, los llenamos de instrucciones.
1.3 Instrucciones.
La secuencia de instrucciones escritas en un orden lógico, que indican las operaciones a realizar para resolver un problema, es lo que denominamos programa.
Las instrucciones sin las expresiones en la mayoría de los casos no tienen razón de ser.
1.3.1 Símbolos.
En un tema anterior pusimos los símbolos más utilizados en los organigramas.
Cada uno de esos símbolos se traduce en una instrucción en un programa.


Si se cumple la condición entonces hacemos y sino se cumple hacemos esto otro.








1.3.2 Estructuras.
Cuando creamos un programa, creamos una estructura que se va ejecutando de forma lineal y en determinados momento necesitamos tomar decisiones, o hacer que algo se repita.
Con las instrucciones podemos crear esos tres tipos de posibilidades,
- Ejecución lineal o secuencial. Ejecución alternativa, tomar una decisión. Ejecución repetitiva.

1.3.3 Lineal, secuencial.
Si volvemos a los ejercicios que realizamos al principio, aunque aun no hayamos utilizado ningún lenguaje, podremos ver como de forma instintiva hemos utilizado instrucciones de forma lineal con expresiones.
Cada símbolo del organigrama, o cada línea del seudo código es una
instrucción.
La estructura que se ha utilizado en esos ejercicios es una estructura lineal.
La imagen que tenemos a la derecha es un ejemplo de estructura secuencial, si nos fijamos en los símbolos del organigrama, veremos que no hay ninguna acción de repetición, no hay ninguna flecha que vuelva hacia arriba a un punto por el que ya hemos pasado.
Tampoco hay ningún punto en el que se divida el programa entre dos posibilidades después de una pregunta.
1.3.4 Alternativas.

Las estructuras alternativas pueden tener dos salidas, cuando cumple, la derecha y cuando no cumple la izquierda.
La parte de no se cumple, la izquierda, es optativa, es decir, no hay porque escribir una acción cuando una condición no se cumple, a lo mejor solo nos piden que visualicemos los números primos, entonces si un número no es primo pasaremos al siguiente y ya está, no hay por que hacer nada.

En un organigrama, cuando se usa un símbolo de decisión, es decir un “Si el número es primo”, la salida de la derecha siempre es la que indicará la acción que se ejecutará cuando se cumpla la condición, salvo que se indique mediante texto lo contrario.
Estas instrucciones pueden estar anidadas, unas dentro de otras.
En el ejemplo podemos observar como dentro de la pregunta de “Tiempo mayor que 180”, hay a su vez otra condición en la que preguntamos por “Resto mayor que cero”.
Y se podrían seguir anidando condiciones.

1.3.5 Repetitivas.
Las estructuras repetitivas, permiten que se pueda ejecutar una parte del programa un número determinado de veces.
Cuantas veces nos han dicho, mientras no te comas la merienda, no iras con tus amigos a jugar al balón, - bueno ahora es a la PlayStation-, o aquello de hasta que no te ordenes la habitación, no sales.
Pues hemos nombrado los dos tipos base de estructura repetitiva que existen, mientras y hasta.
Mientras se cumple una condición.
Repite hasta que se cumple una condición.


Una estructura repetitiva esta formada por una serie de instrucciones que están escritas en el interior de otra instrucción que permite que esas instrucciones se ejecuten un número determinado de veces, mientras se cumple una condición, o hasta que se cumpla una condición.
Si observamos las imágenes veremos que en una la condición que controla cuando se ejecuta el bucle, está al principio y en la otra está al final.
La diferencia permite que en un caso, mientras, While, solo se ejecuta las instrucciones del interior del bucle si la condición se cumple al llegar al bucle.
En el caso del hasta, Repeat, las instrucciones del interior del bucle se ejecutarán siempre al menos una vez, ya que la condición se analiza al final.
Los bucles mientras y repite, pueden usarse indistintamente, pero evidentemente el motivo de su existencia es porque no siempre se pueden sustituir uno por el otro.
En los bucles, se realiza aquellas acciones que nos sean necesarias en el programa, pero una de las situaciones habituales es la de realizar operaciones donde se cuentan, o se incrementan valores.
En los dos ejemplos que vemos a continuación, podemos observar como en los dos casos se realiza la misma acción, que es la de visualizar unos valores que van de diez a veinte.


Sin embargo, si observamos los dos ejemplos, veremos como hay diferencias en el de la izquierda, el número uno, la acción de incremento del contador, se realiza después de la acción de visualizar la variable X, mientras que en la de la derecha, el número dos, es al revés.
SI seguimos observando los ejemplos, podemos ver como en un caso el valor inicial de X es diez, y en el otro nueve.
Si seguimos observando, veremos que las condiciones de salida del bucle cambian, en un caso por igual a veinte y en otro por ser mayor que veinte.
En el primer caso cuando X vale veinte en la condición de salida, ese número todavía no ha sido visualizado.
En el segundo caso, cuando X vale veinte en la condición de salida, ese número ya ha sido visualizado, esos son los matices.
La programación está llena de matices y “tonterías de éste tipo”, pero es esa la diferencia entre que funcione correctamente o no.
Un programa no puede ir bien para el noventa por ciento de los valores, si no para el cien por cien de los mismos.
Traducción, en un bucle lo importante es siempre:
- Con que valores o condiciones empiezas, En que momento realizas la progresión, Cuando realizas la acción que te interesa en el bucle En que momento abandonas el bucle, condición de salida.
Si estas condiciones las tenemos presentes, el uso de los bucles carece de problemas.
Lo siguiente es tener presente en que momento hay que utilizar de forma obligatoria un bucle While o un bucle Repeat.
Con el tiempo veremos que el más utilizado acaba siendo el mientras, pues casi siempre nos interesa tener controlado que se cumpla determinada condición antes de entrar en el bucle.
Otro matiz, si en un bucle Repite la condición es hasta que “sea de color verde” en un bucle mientras la condición se invierte y será mientras “sea de color verde”.
Aunque nadie se lo creerá, con lo que hemos visto, a nivel de creación de la estructura de un programa, no hay nada más que explicar, eso les da una idea, por un lado de lo sencillo que es hacer un programa, y de lo importante que es tener hasta aquí claro todo lo que se ha visto.
Evidentemente que la programación no es solo lo que se ha visto, todavía quedan temas por ver, muchos temas, pero en realidad, para crear un programa, no hace falta nada más de lo que se ha visto.
El resto de temas pendientes de ver se apoya en lo visto, de ahí la importancia de tener claro todo lo visto.
Y para que puedan palparlo, el próximo tema empezaremos a ver ya lo que hemos visto pero desde el punto de vista de un lenguaje de programación.
1.4 Vídeo de refuerzo.
Por último dejamos un vídeo de refuerzo por si algún concepto no ha quedado claro.
1.5 Ejercicios propuestos.
- 1. - Introducir dos números A y B, e indicar cual es el mayor de ambos. 2. - Introducir dos números A y B, e indicar cual es el menor. 3. - Introducir dos números A y B, e indicar si son distintos. 4. - Introducir dos números A y B, e indicar si no son iguales. 5. - Introducir dos números A y B, e indicar si son iguales. 6. - Introducir dos números A y B, e indicar cual no es el mayor. 7. - Introducir dos números A y B, e indicar cual no es el menor. 8. - Introducir dos números A y B.
- Si A es mayor que B calcular y visualizar A + B y A / B. Si A no es mayor que B calcular y visualizar A * B y B - A.
- Si A es menor que B calcular y visualizar A * B y B - A. Si A no es menor que B calcular y visualizar A + B y A / B.
- Si A es mayor que B calcular A / B. Si A es menor que B calcular A * B. Si A es igual que B calcular A + B.
- Si A es distinto que B calcular y visualizar A + B y A / B. Si A es igual que B calcular y visualizar A * B y B - A.
1.6 Solución a los ejercicios propuestos.
Más adelante codificaremos estos ejercicios en el lenguaje que cada uno de ustedes seleccione.
Introducir dos números A y B, e indicar cual es el mayor de ambos.

Los ejercicios del 1 al 7 son iguales en su estructura, distintos en la condición.
2º la condición será A< B
3º , 4º y 5º, la condición será A<> B o A = B, en función de si deseamos salir por afirmación o por negación.
Inicio Ejercicio Uno.
Código: |
Declarar A y B como enteras. Escribir "Introducir dos valores e indicar cual es el mayor" Leer "Introduzca A", A Leer "introduzca B", B Si A > B Entonces Escribir "El mayor es A" Si no Escribir "El mayor es B" Fin de condición. Final |
Introducir dos números A y B, e indicar cual no es el mayor.

7º la estructura es igual cambiando la condición.
Introducir dos números A y B.
- Si A es mayor que B calcular y visualizar A + B y A / B. Si A no es mayor que B calcular y visualizar A * B y B - A.
Podemos comprobar que la estructura es la misma pero cambia el contenido de las acciones.

Inicio Ejercicio Ocho.
Código: |
Declarar A y B como enteras. Escribir "Introducir dos valores numéricos" Leer "Introduzca A", A Leer "introduzca B", B Si A > B Entonces Escribir A + B Escribir A / B Si no Escribir A * B Escribir B - A Fin de condición. Final |
Introducir dos números A y B.
- Si A es menor que B calcular y visualizar A * B y B - A. Si A no es menor que B calcular y visualizar A + B y A / B.
Se repite la estructura cambiando la condición y el contenido de las acciones.

Introducir dos números A y B y visualizarlos en orden creciente.

11º, se repite la estructura cambiando la condición.
Introducir dos números A y B y visualizar el resultado de:
- Si A es mayor que B calcular A / B. Si A es menor que B calcular A * B. Si A es igual que B calcular A + B.
En éste ejercicio aparece un nuevo símbolo, A comparado con B, por eso la condición puede tener tres salidas, pero han de estar documentadas, como se puede observar en el mismo.

Inicio Ejercicio Doce.
Código: |
Declarar Resultado, A y B como enteras. Escribir "Introducir dos valores numéricos" Leer "Introduzca A", A Leer "introduzca B", B Si A > B Entonces Resultado = A / B Si no Si A < B Entonces Resultado = A * B Si no Resultado = A + B Fin de condición Fin de condición. Escribir "El resultado es ", Resultado Final |
Introducir dos números A y B.
- Si A es distinto que B calcular y visualizar A + B y A / B. Si A es igual que B calcular y visualizar A * B y B - A.

Los siguientes ejercicios, son bucles, y las soluciones están hechas en la mayoría de los casos con bucles del tipo Repeat.
Sería conveniente que los hicieran también con el bucle While.
Visualizar los números entre 10 y 20:

Inicio Ejercicio Catorce.
Código: |
Declarar X como Entera. Escribir "Visualizamos los números entre diez y veinte" X = 10 Inicio de repite Escribir X X = X + 1 Hasta que X > 20 Final |
Inicio Ejercicio Catorce.
Código: |
Declarar X como Entera. Escribir "Visualizamos los números entre diez y veinte" X = 9 Inicio de repite X = X + 1 Escribir X Hasta que X = 20 Final |
Visualizar los números entre 20 y 10.

Visualizar los números entre 10 y 20 y sumarlos.

Inicio Ejercicio Dieciséis.
Código: |
Declarar X y Suma como Entera. Escribir "Visualizamos los números entre diez y veinte" X = 10 Inicio de repite Escribir X Suma = Suma + X X = X + 1 Hasta que X > 20 Escribir "El Valor de la suma es ", Suma Final |
Visualizar los números entre 20 y 10 que sean pares.

La condición X Mod 2 significa si el resto de la división de X por 2 es cero, o sea que es par.
Inicio Ejercicio Diecisiete.
Código: |
Declarar X como Entera. Escribir "Visualizamos los números entre diez y veinte" X = 21 Inicio de repite X = X – 1 Si X Mod 2 = 0 Entonces Escribir X Fin de condición Hasta que X = 10 Final |
Autor del curso: Casiopea.
No hay comentarios:
Publicar un comentario