Descarga la aplicación para disfrutar aún más
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.
Compartir