...

práctica algorítmica: ejercicios propuestos

by user

on
Category: Documents
0

views

Report

Comments

Transcript

práctica algorítmica: ejercicios propuestos
Asignatura: Fundamentos de Informática
Departamento de Arquitectura y Tecnología de Computadores (ATC)
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.
Asignatura: Fundamentos de Informática
Departamento de Arquitectura y Tecnología de Computadores (ATC)
SOLUCIONES
ALGORITMO problema4
VARIABLES
num ES ENTERO
INICIO
ESCRIBE “Teclee un número menor que 5”
LEE num
MIENTRAS num >= 5 HACER
ESCRIBE “Teclee un número menor que 5”
LEE num
FIN MIENTRAS
ESCRIBE “El número leído es “, num
FIN
ALGORITMO problema5
VARIABLES
num ES ENTERO
INICIO
ESCRIBE “Teclee un número entre 5 y 15 (no incluidos)”
LEE num
MIENTRAS num <= 5 O num >= 15 HACER
ESCRIBE “Teclee un número entre 5 y 15 (no incluidos)”
LEE num
FIN MIENTRAS
ESCRIBE “El número leído es “, num
FIN
ALGORITMO problema6
VARIABLES
num, veces SON ENTEROS
INICIO
ESCRIBE “Teclee un número entre 5 y 15 (no incluidos)”
LEE num
veces ← 1
MIENTRAS num <= 5 O num >= 15 HACER
ESCRIBE “El número es incorrecto, inténtelo de nuevo.”
LEE num
veces ← veces + 1
FIN MIENTRAS
ESCRIBE “El número leído es “, num
ESCRIBE “El número de intentos ha sido “, veces
FIN
Página 2 de 7
Asignatura: Fundamentos de Informática
Departamento de Arquitectura y Tecnología de Computadores (ATC)
ALGORITMO problema7
VARIABLES
num, veces SON ENTEROS
INICIO
ESCRIBE “Teclee un número entre 5 y 15 (no incluidos)”
LEE num
veces ← 1
MIENTRAS (num <= 5 O num >= 15) Y veces < 10 HACER
ESCRIBE “El número es incorrecto, inténtelo de nuevo.”
LEE num
veces ← veces + 1
FIN MIENTRAS
SI (veces = 10) ENTONCES
ESCRIBE “Se han acabado los intentos”
SINO
ESCRIBE “El número leído es “, num
ESCRIBE “El número de intentos ha sido “, veces
FINSI
FIN
ALGORITMO problema8
VARIABLES
v ES VECTOR DE 10 ENTEROS (INDICES 1 A 10)
i ES ENTERO
INICIO
i ← 1
MIENTRAS i <= 10 HACER
ESCRIBE “El elemento “, i, “ vale ”, v[i]
i ← i+1
FIN MIENTRAS
FIN
ALGORITMO problema9
VARIABLES
v ES VECTOR DE 10 ENTEROS (INDICES 1 A 10)
total, i SON ENTEROS
INICIO
i ← 1
total ← 0
MIENTRAS i <= 10 HACER
total ← total + v[i]
i ← i+1
FIN MIENTRAS
ESCRIBE total
FIN
Página 3 de 7
Asignatura: Fundamentos de Informática
Departamento de Arquitectura y Tecnología de Computadores (ATC)
ALGORITMO problema10
VARIABLES
v ES VECTOR DE 10 ENTEROS (INDICES 1 A 10)
cuenta, i SON ENTEROS
INICIO
i ← 1
cuenta ← 0
MIENTRAS i <= 10 HACER
SI v[i] >= 10 Y v[i] < 50 ENTONCES
cuenta ← cuenta + 1
FINSI
i ← i+1
FIN MIENTRAS
ESCRIBE total
FIN
ALGORITMO problema11
VARIABLES
v ES VECTOR DE 10 ENTEROS (INDICES 1 A 10)
total, cuenta, i SON ENTEROS
INICIO
i ← 1
cuenta ← 0
total ← 0
MIENTRAS i <= 10 HACER
SI v[i] >= 10 Y v[i] < 50 ENTONCES
cuenta ← cuenta + 1
total ← total + v[i]
FINSI
i ← i+1
FIN MIENTRAS
ESCRIBE total / cuenta
FIN
ALGORITMO problema12
VARIABLES
i ES ENTERO
s ES REAL
INICIO
LEER n
s ← 0
i ← 1
MIENTRAS
i<=n
s ← s+i
i ← i+1
HACER
Página 4 de 7
Asignatura: Fundamentos de Informática
Departamento de Arquitectura y Tecnología de Computadores (ATC)
FIN MIENTRAS
ESCRIBE “La suma de los primeros “, n, “ numeros es “, s
FIN
ALGORITMO Problema12 (estructura REPETIR … HASTA)
VARIABLES
i, n SON ENTEROS
s ES REAL
INICIO
LEER n
s ← 0.0
i ← 1
REPETIR
s ← s + i
i ← i +1
HASTA
i > n
ESCRIBE “La suma de los primeros”, n
ESCRIBE “numeros positivos es = “, s
FIN
ALGORITMO Problema12 (Estructura PARA)
VARIABLES
i,
n SON ENTEROS
s ES REAL
INICIO
LEER n
s ← 0.0
PARA i ← 1 HASTA n HACER
s ← s + i
FIN PARA
ESCRIBE “La suma de los primeros”, n
ESCRIBE “numeros positivos es = “, s
FIN
ALGOTIRMO Problema13 (búsqueda secuencial)
CONSTANTES
n VALE 100
VARIABLES
a ES VECTOR DE REALES (INDICES 1 A n)
i ES ENTERO
valor ES REAL
encontrado ES BOOLEANO
INICIO
LEE valor
i ← 1
encontrado ← FALSO
Página 5 de 7
Asignatura: Fundamentos de Informática
Departamento de Arquitectura y Tecnología de Computadores (ATC)
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
FINSI
i ← i+1
FIN MIENTRAS
FIN
ALGOTIRMO Problema14 (búsqueda del máximo)
CONSTANTES
n VALE 100
VARIABLES
a ES VECTOR DE REALES (INDICES 1 A n)
i ES ENTERO
max ES REAL
INICIO
LEE valor
max ← a[1]
PARA i ← 2 HASTA n HACER
SI a[i] > max ENTONCES
max ← a[i]
FINSI
FIN PARA
ESCRBE “El valor máximo es”, max
FIN
ALGOTIRMO Problema15 (búsqueda del mínimo solución 1)
CONSTANTES
n VALE 100
VARIABLES
a ES VECTOR DE REALES (INDICES 1 A n)
i, imin ES ENTERO
min ES REAL
INICIO
LEE valor
min ← a[1]
imin ← 1
PARA i ← 2 HASTA n HACER
SI a[i] < min ENTONCES
min ← a[i]
imin ← i
FINSI
FIN PARA
ESCRIBE “El valor mínimo es”, min, “ y se encuentra en la posición “, imin
Asignatura: Fundamentos de Informática
Departamento de Arquitectura y Tecnología de Computadores (ATC)
Página 7 de 7
FIN
ALGOTIRMO Problema15 (búsqueda del mínimo solución 2)
CONSTANTES
n VALE 100
VARIABLES
a ES VECTOR DE REALES (INDICES 1 A n)
i, imin ES ENTERO
INICIO
LEE valor
imin ← 1
PARA i ← 2 HASTA n HACER
SI a[i] < a[imin] ENTONCES
imin ← i
FINSI
FIN PARA
ESCRIBE “El valor mínimo es”, a[imin], “ y se encuentra en la posición “, imin
FIN
Fly UP