viernes, 21 de junio de 2013

Curso programación desde 0 - Tema 6 - Bucles repetitivos

Otra de las cosas más Utilizadas y de las que más apuros y facilidades nos pueden dar en la programación son los bucles, tenemos varios de ellos, aunque básicamente podemos englobarlos en:
·         los que se cumplen siempre que una condición se cumpla.
·         los que se repiten hasta que se cumpla una condición

El más usado con diferencia es el conocido como bucle for, que podría traducirse como “para” el cual tendría el siguiente aspecto:

Para (var i =0; i< 20; i++)
                Muestra i;
FinPara

Ahora que hemos visto la estructura vamos a explicar que es esto que a primera vista parece tan complejo; en la primera línea tenemos: Para (var i =0; i< 20; i++)

Lo cual nos dice que es un bucle Para, y entre los paréntesis tenemos los datos que debemos pasarle, separados por “;” lo cual nos lo deja en 3 partes:

·         Var i =0; Aquí estamos declarando la variable i es el nombre más utilizado en este tipo de bucles, pero podemos darle el nombre que más nos apetezca, podría ser juanito sin ningún problema, a la vez que la declaramos, le damos el valor de 0; por lo que usaremos la variable llamada i y comenzara con un valor de 0.
·         I< 20; los siguientes datos que le damos son una condición, i menor a 20; con esto le decimos que repitamos lo que tengamos dentro del bule hasta que i sea 20, en el momento en que sea 20 saldremos del bucle sin hacer el código que hay dentro.
·         I++; este es el ultimo código que tenemos en el bucle, esto se lo podremos dar a cualquier variable de tipo Numero es algo sencillo, simplemente sumamos 1 al valor que tenga i; también podemos usar i—por ejemplo lo cual restaría 1 al valor de i
Este bucle nos mostraría 20 números, el primero sería el 0 y el ultimo el 19, cuando entramos en un bucle solo se ejecutara el código que hay en su interior, es decir desde donde tenemos escrito Para, hasta donde pone FinPara, por lo que hay que prestar atención a lo que hacemos, ya que si tuviéramos algo parecido a esto:



Para (var i =0; i< 20; i++)
                Si (i = 15)
                               i= i -10;
                FinSi
Muestra i;
FinPara

Restaríamos 10 a i siempre que valga 15, por lo que volveríamos al 5 y del 5 hasta que llegáramos al 15, y otra vez restaríamos 10, y así una y otra vez, por lo que nunca saldríamos del bucle, y habríamos hecho lo que se conoce como bucle infinito, esto suele bloquear el sistema, es un error y hay que evitar que se produzca

Otro de los bucles más usados son los bucles hasta (while), con la siguiente estructura

Hasta (condición)
                Lo que sea;
FinHasta

Este bucle se repetirá siempre hasta que la condición se cumpla; un ejemplo podría ser algo así:

Hasta (¡SentimosSed)
                Ejercicio de calmar la sed;
FinHasta

En este ejemplo hemos puesto el signo de admiración delante de la variable SentimosSed, el símbolo ¡ puede traducirse como No, por lo que esto lo que hace es volver a lo contrario la variable, es decir, si es verdadera, la convierte en falsa, si es falsa la convierte en verdadera, así  ejecutaremos una y otra vez el ejercicio de calmar la sed, hasta que No tengamos sed.

El último Bucle que vamos a ver es el Do-While o lo que vendría siendo en castellano haz- hasta, este bucle se repetirá siempre hasta que se de la condición en el hasta, pero con la salvedad de que siempre se ejecutara como mínimo una vez, su estructura es la siguiente:

Haz
                Lo que sea;
Hasta(condición);




Piensa que tipo de bucle sería el más adecuado para hacer una tabla de multiplicar del 5 y desarrolla el pseudocódigo;

Recuerda que el mejor modo para la corrección es publicarlo como comentario debajo del ejercicio, así tú y todos tus compañeros podréis aprender y ayudaros los unos a los otros, pero estoy disponible en el email rogamainformatica@gmail.com

Resto de temas:
Tema 8 - Programación Orientada a Objetos POO
Tema 7 - Funciones
Tema 6 - Bucles Repetitivos (Tema actual)
Tema 5 - Usando condicionales
Tema 4 - Arrays
Tema 3 - Pensando con variables
Tema 2 - Pensando como Programadores
Tema 1 - ¿Que es la programacion?