Logo Studenta

IV-Algoritmos-iterativos

¡Estudia con miles de materiales!

Vista previa del material en texto

UNIVERSIDAD VERACRUZANA. F.C.A. CAMPUS IXTAC 
 
34 
 
IV Algoritmos iterativos (Ciclos) 
 
Este tipo de estructuras, son las que nos permiten ejecutar varias veces un conjunto 
determinado de instrucciones, a esta repetición se le conoce con el nombre de ciclos. 
De manera general existen 3 tipos de estructuras cíclicas, Do While (Repeat), While 
do (While), For. 
 
1. While Do (While - hacer mientras) 
Estructura iterativa que indica un conjunto de instrucciones que se deben de repetir 
mientras que la respuesta a la expresión que se coloca dentro del símbolo de decisión 
sea VERDADERA, por lo tanto cuando la respuesta a la condición sea FALSA se 
continúa con la siguiente instrucción es decir sale del ciclo. 
 
Debido a su estructura es muy posible que nunca se ejecute el ciclo debido a: 
 La variable a evaluar no tiene valor 
 Al usuario no se le pidió que almacenará un valor en la variable. 
 El usuario decidió no ingresar a la estructura. 
 
Consideraciones : 
 Solicite al usuario un valor para la variable a evaluar antes de ingresar al ciclo, ya que 
probablemente no desea ingresar al ciclo. 
 Siempre colocar dentro de la estructura del ciclo las instrucciones que permitan al 
usuario o al algoritmo almacenar un nuevo valor en la variable a evaluar para evitar un 
ciclo infinito. 
 
Ejemplo: (PseInt) 
 
 
Proceso sin_titulo 
 Definir r Como Caracter; 
 r='S"; 
 Mientras (r='S') O (r='s') Hacer 
 Escribir 'Quieres entrar 
nuevamente al ciclo?'; 
 Leer r; 
 FinMientras 
FinProceso 
 
 
 
 
 
En otro caso se puede iniciar la variable a evaluar antes de ingresar al ciclo. 
UNIVERSIDAD VERACRUZANA. F.C.A. CAMPUS IXTAC 
 
35 
 
 
 
 Proceso sin_titulo 
 Definir r Como Caracter; 
 r='S"; 
 Mientras (r='S') O (r='s') 
Hacer 
 Escribir 'Quieres 
entrar nuevamente al ciclo?'; 
 Leer r; 
 FinMientras 
FinProceso 
 
 
 
 
 
 
 
2. Do While (Repeat – Repetir – Hasta) 
 Estructura iterativa que indica un conjunto de instrucciones que se deben repetir 
mientras que la respuesta a la condición colocada en el lugar del símbolo de decisión 
sea FALSA, por lo tanto cuando la respuesta sea VERDADERA se termina de ejecutar 
el ciclo. Esta estructura se ejecuta siempre al menos una vez, debido a que las 
instrucciones a ejecutar se encuentran dentro del ciclo antes de evaluar la expresión. 
 
Esta estructura se puede ejecutar infinidad de veces debido a las siguientes causas: 
 
 La variable a evaluar no tiene ningún valor almacenado. 
 Al usuario no se le pidió que almacenará un valor en la variable. 
 El usuario decidió no ingresar a la estructura. 
Consideraciones : 
 
 El o los procesos que se encuentran dentro del ciclo se realizan por lo menos una vez. 
 Siempre colocar dentro de la estructura del ciclo las instrucciones que permitan al 
usuario o al algoritmo almacenar un nuevo valor en la variable a evaluar para evitar un ciclo 
infinito. 
 
 
 
 
 
UNIVERSIDAD VERACRUZANA. F.C.A. CAMPUS IXTAC 
 
36 
 
Ejemplo . (PseInt) 
 
 
 
 
Proceso sin_titulo 
 Definir r como caracter; 
 Repetir 
 Escribir "Se encuentra en el 
ciclo"; 
 Escribir "Desea volver a 
entrar?"; 
 Leer r; 
 Hasta Que r ="n" o r ="N" 
 Escribir "Salio del ciclo"; 
FinProceso 
 
 
 
 
 
 
3. For (Hacer para... hasta ...) 
Esta estructura iterativa indica un rango de valores exacto que una variable tendrá para 
repetir un conjunto de instrucciones. Consta de las siguientes partes : Un valor de inicio 
para la variable, el incremento o decremento de los valores de la variable y por último la 
comparación del valor de la variable con el fin del rango establecido. 
Las instrucciones a ejecutar que se encuentran dentro del ciclo se ejecutarán mientras 
la respuesta a la expresión colocada en el símbolo de decisión sea VERDADERA de 
lo contrario el ciclo se termina. 
 
Aun así, el ciclo se puede ejecutar infinidad de veces debido a la falta de una 
instrucción que permita incrementar o decrementar el valor de la variable a evaluar. 
 
También es posible que nunca se ejecute el ciclo debido a que la asignación de la 
variable a evaluar sea un valor que de cómo resultado : verdadero en la condición. 
 
Consideraciones: 
 
 Siempre colocar las instrucciones que permiten incrementar o decrementar el valor de la 
variable a evaluar para evitar un ciclo infinito. 
 Siempre asignar un valor a la variable que de cómo resultado verdadero en la condición 
para que pueda ingresar al ciclo al menos una vez. 
 
 
UNIVERSIDAD VERACRUZANA. F.C.A. CAMPUS IXTAC 
 
37 
 
Ejemplo: 
 
Proceso sin_titulo 
 Definir i Como Entero; 
 Escribir 'Desplegar del 1 
al 10'; 
 Para i<-1 Hasta 10 Con 
Paso 1 Hacer 
 Escribir i; 
 FinPara 
FinProceso 
 
 
 
 
 
 
 
Notas: 
 
 Cada ciclo es diferente en su estructura. 
 El WHILE DO primero valida si se realiza el o los procesos, entra al 
ciclo si la condición es verdadera. 
 En WHILE DO la condición va primero. 
 El DO WHILE realiza por lo menos 1 vez el o los procesos, regresa 
al ciclo si la condición es falsa. 
 En el DO WHILE la condición va al final. 
 El FOR realiza N veces el o los procesos y termina cuando la 
condición es falsa. 
 La ejecución de cada ciclo depende de su condición, esta valida 
expresiones de comparación que puede incluir variables, 
constantes y operadores. 
UNIVERSIDAD VERACRUZANA. F.C.A. CAMPUS IXTAC 
 
38 
 
 
UNIVERSIDAD VERACRUZANA. F.C.A. CAMPUS IXTAC 
 
39 
 
 
CICLOS DE VALIDACION DE DATOS DE ENTRADA 
 
 DO WHILE 
N 
 
N > 0 
 
‘Rechazado’ 
 
‘Aceptado’ 
 
N > 0 
 
No 
 
Si 
 
Si 
No 
 
WHILE 
 
‘Aceptado’ 
 
‘Rechazado’ 
 
N < 0 
 
N > 0 
 
N 
 
Si 
 
Si 
 
No 
 
N 
 
 
No 
 
UNIVERSIDAD VERACRUZANA. F.C.A. CAMPUS IXTAC 
 
40 
 
 
 
 
DO WHILE 
N 
 
(N > 0) 
and 
(N<=10) 
 
 
 
‘Rechazado’ 
 
‘Aceptado’ 
 
Si 
 
Si 
 
No 
 
No 
 
(N > 0) 
and 
(N<=10) 
 
 
 
WHILE 
 
N 
 
‘Aceptado’ 
 
‘Rechazado’ 
 
(N < 0) 
or 
(N>10) 
 
N 
 
Si 
 
Si 
 
No 
 
(N > 0) 
and 
(N<=10) 
 
 
No 
 
UNIVERSIDAD VERACRUZANA. F.C.A. CAMPUS IXTAC 
 
41 
 
 
DO WHILE 
R 
 
(R = ‘S’) 
or 
(R = ‘N’) 
 
 
 
‘Rechazado’ 
 
‘Aceptado’ 
 
Si 
 
Si 
 
No 
 
No 
 
(N = ‘S’) 
or 
(N = ‘N’) 
 
 
 
WHILE 
 
‘Aceptado’ 
 
‘Rechazado’ 
 
( R <> ‘S’) 
or 
( R <> ‘N’) 
 
R 
 
Si 
 
Si 
 
No 
 
(R = ‘S’) 
or 
(R = ‘N’) 
 
R 
 
No 
 
UNIVERSIDAD VERACRUZANA. F.C.A. CAMPUS IXTAC 
 
42 
 
Problemas para ciclos 
 
1) Leer 10 números e imprimir solamente los números positivos 
2) Leer 20 números e imprimir cuantos son positivos, cuantos negativos y cuantos 
neutros. 
3) Leer 15 números negativos y convertirlos a positivos e imprimir la suma de 
dichos números. 
4) Suponga que se tiene un conjunto de calificaciones de un grupo de 40 alumnos. 
Realizar un algoritmo para calcular la calificación media y la calificación más 
baja de todo el grupo. 
5) Calcular e imprimir la tabla de multiplicar de un número cualquiera. Imprimir el 
multiplicando, el multiplicador y el producto. 
6) Simular el comportamiento de un reloj digital, imprimiendo la hora, minutos y 
segundos de un día desde las 0:00:00 horas hasta las 23:59:59 horas. 
7) Una persona debe realizar un muestreo con 50 personas para determinar el 
promedio de peso de los niños, jóvenes, adultos y viejos que existen en su zona 
habitacional. Se determinan las categorías con base en la sig, tabla 
 CATEGORIA EDAD 
 Niños 0 - 12 
 Jóvenes 13 - 29 
 Adultos 30 - 59 
 Ancianos 60 en adelante 
 
8) Determinar cuántos hombres y cuantas mujeres se encuentran en un grupo de 
n personas, suponiendo que los datos son extraídos alumno por alumno. 
9) El Depto. de Seguridad Publica y Transito del D.F. desea saber, de los n autos 
que entran a la ciudad de México, cuantos entran con calcomanía de cada 
color. Conociendo el ultimodígito de la placa de cada automóvil se puede 
determinar el color de la calcomanía utilizando la sig. relación: 
 DÍGITO COLOR 
 1 o 2 amarilla 
 3 o 4 rosa 
 5 o 6 roja 
 7 o 8 verde 
 9 o 0 azul 
 
10) Obtener el promedio de calificaciones de un grupo de n alumnos. 
11) Calcular el promedio de edades de hombres, mujeres y de todo un grupo de 
alumnos. 
12) Encontrar el menor valor de un conjunto de n números dados. 
13) Encontrar el mayor valor de un conjunto de n números dados. 
14) Calcular la suma siguiente: 100 + 98 + 96 + 94 + . . . + 0 en este orden 
 
15) Leer 50 calificaciones de un grupo de alumnos. Calcule y escriba el porcentaje 
de reprobados. Tomando en cuenta que la calificación mínima aprobatoria es 
de 70.

Continuar navegando

Materiales relacionados

82 pag.
3tm-gherprog

IPN

User badge image

Todos los Materiales