Página 1 de 7 PRÁCTICA ALGORÍTMICA: EJERCICIOS PROPUESTOS EJERCICIOS DE ESTRUCTURA REPETITIVA 1. (Problema 4) Escriba un algoritmo que lea del teclado un número entero y que compruebe si es menor que 5. Si no lo es, debe volver a leer un número, repitiendo la operación hasta que el usuario escriba un valor correcto. Finalmente debe escribir por pantalla el valor leído. 2. (Problema 5) Modifique el algoritmo del problema 4 para que, en vez de comprobar que el número es menor que 5, compruebe que se encuentre en el rango (5,15). 3. (Problema 6) Modifique el algoritmo del problema 5 para que cuente las veces que ha leído un número del teclado y escriba el resultado por pantalla. 4. (Problema 7) Modifique el algoritmo del problema 6 para que se realicen 10 lecturas del teclado como máximo. 5. (Problema 8) Escriba un algoritmo que, dado un vector de 10 enteros, escriba todos sus elementos por pantalla. Supongamos que el primer elemento del vector tiene índice 1. 6. (Problema 9) Escriba un algoritmo que, dado un vector de 10 enteros, sume todos sus elementos y escriba por pantalla el resultado. Supongamos que el primer elemento del vector tiene índice 1. 7. (Problema 10) Escriba un algoritmo que, dado un vector de enteros, cuente los elementos que están en el rango [10, 50) y que escriba el resultado por pantalla. 8. (Problema 11) Modifique el algoritmo del problema 10 para que calcule la media de los elementos que cumplen la condición. 9. (Problema 12 ) Escriba un algoritmo en pseudo código que calcule e imprima la suma de los n primeros números enteros positivos. El valor de n debe leerse del teclado. 10. (Problema 13) Escriba un algoritmo que lea un número real del teclado y busque dicho número en un vector de N números reales, donde N es una constante a la que le daremos un valor cualquiera. Si se encuentra el número, se debe escribir por pantalla el índice del elemento que lo contiene. Supongamos que: a. Que el algoritmo no necesita leer el contenido del vector. b. Ningún elemento del vector se repite. 11. (Problema 14) Escriba un algoritmo que busque el valor máximo de los elementos de un vector de N números reales, donde N es una constante a la que le daremos un valor cualquiera. El algoritmo debe escribir por pantalla el valor máximo. Supongamos que: a. Que el algoritmo no necesita leer el contenido del vector. 12. (Problema 15) Escriba un algoritmo que busque el valor mínimo de los elementos de un vector de N números reales, donde N es una constante a la que le daremos un valor cualquiera. El algoritmo debe escribir por pantalla el valor máximo y el índice del elemento que lo contiene. Supongamos que: a. Que el algoritmo no necesita leer el contenido del vector.
Página 2 de 7 SOLUCIONES ALGORITMO problema4 num ES ENTERO ESCRIBE Teclee un número menor que 5 MIENTRAS num >= 5 HACER ESCRIBE Teclee un número menor que 5 MIENTRAS ALGORITMO problema5 num ES ENTERO MIENTRAS num <= 5 O num >= 15 HACER MIENTRAS ALGORITMO problema6 num, veces SON ENTEROS veces 1 MIENTRAS num <= 5 O num >= 15 HACER ESCRIBE El número es incorrecto, inténtelo de nuevo. veces veces + 1 MIENTRAS ESCRIBE El número de intentos ha sido, veces
Página 3 de 7 ALGORITMO problema7 num, veces SON ENTEROS veces 1 MIENTRAS (num <= 5 O num >= 15) Y veces < 10 HACER ESCRIBE El número es incorrecto, inténtelo de nuevo. veces veces + 1 MIENTRAS SI (veces = 10) ENTONCES ESCRIBE Se han acabado los intentos SINO ESCRIBE El número de intentos ha sido, veces SI ALGORITMO problema8 MIENTRAS i <= 10 HACER ESCRIBE El elemento, i, vale, v[i] MIENTRAS ALGORITMO problema9 total, i SON ENTEROS total 0 MIENTRAS i <= 10 HACER total total + v[i] MIENTRAS ESCRIBE total
Página 4 de 7 ALGORITMO problema10 cuenta, i SON ENTEROS cuenta 0 MIENTRAS i <= 10 HACER SI v[i] >= 10 Y v[i] < 50 ENTONCES cuenta cuenta + 1 SI MIENTRAS ESCRIBE total ALGORITMO problema11 total, cuenta, i SON ENTEROS cuenta 0 total 0 MIENTRAS i <= 10 HACER SI v[i] >= 10 Y v[i] < 50 ENTONCES cuenta cuenta + 1 total total + v[i] SI MIENTRAS ESCRIBE total / cuenta ALGORITMO problema12 s ES REAL LEER n s 0 MIENTRAS i<=n HACER s s+i
Página 5 de 7 MIENTRAS ESCRIBE La suma de los primeros, n, numeros es, s ALGORITMO Problema12 (estructura REPETIR HASTA) i, n SON ENTEROS s ES REAL LEER n s 0.0 REPETIR s s + i i i +1 HASTA i > n ESCRIBE La suma de los primeros, n ESCRIBE numeros positivos es =, s ALGORITMO Problema12 (Estructura PARA) i, n SON ENTEROS s ES REAL LEER n s 0.0 PARA HASTA n HACER s s + i PARA ESCRIBE La suma de los primeros, n ESCRIBE numeros positivos es =, s ALGOTIRMO Problema13 (búsqueda secuencial) valor ES REAL encontrado ES BOOLEANO encontrado FALSO
Página 6 de 7 MIENTRAS i<=n Y NO encontrado HACER SI a[i] = valor ENTONCES encontrado VERDADERO ESCRIBE El valor se ha encontrado en la posición, i SI MIENTRAS ALGOTIRMO Problema14 (búsqueda del máximo) max ES REAL max a[1] PARA i 2 HASTA n HACER SI a[i] > max ENTONCES max a[i] SI PARA ESCRBE El valor máximo es, max ALGOTIRMO Problema15 (búsqueda del mínimo solución 1) i, imin ES ENTERO min ES REAL min a[1] imin 1 PARA i 2 HASTA n HACER SI a[i] < min ENTONCES min a[i] imin i SI PARA ESCRIBE El valor mínimo es, min, y se encuentra en la posición, imin
Página 7 de 7 ALGOTIRMO Problema15 (búsqueda del mínimo solución 2) i, imin ES ENTERO imin 1 PARA i 2 HASTA n HACER SI a[i] < a[imin] ENTONCES imin i SI PARA ESCRIBE El valor mínimo es, a[imin], y se encuentra en la posición, imin