hoja de ejercicios resueltos
TRANSCRIPT
Ejercicios de Apoyo para clases de Seudocódigo y DF
1. Diseñar el algoritmo correspondiente a un programa que lea el valor correspondiente a una distancia en millas marinas y las escriba expresadas en metros. Sabiendo que 1 milla marina equivale a 1852 metros.
Seudocódigo Diagrama de Flujo
Ordinograma Pseudocódigo
PROGRAMA: Millas_y_metros
MÓDULO: Principal
INICIO
DATOS: CONSTANTES
Entero MILL_METR = 1852 VARIABLES
Entero Dmillas Entero Dmetros ALGORITMO:
Escribir (“Distancia en millas: ”)
Leer(Dmillas) Dmetros = Dmillas * MILL_METR
Escribir ( “Distancia en metros:”, Dmetros) FIN
2. Diseñar el algoritmo correspondiente a un programa que escribe el porcentaje descontado en una compra, introduciendo por teclado el precio de la tarifa y el precio pagado.
Seudocódigo Diagrama de Flujo
PROGRAMA: Descuento
MÓDULO: Principal
INICIO
DATOS:
VARIABLES Entero Tarifa Entero Precio Entero Dto Real Pd ALGORITMO:
Leer (Tarifa)
Leer (Precio) Dto = Tarifa - Precio
Pd = Dto * 100 / Tarifa Escribir(“Porcentaje de descuento:”, Pd)
FIN
3. Diseñar el algoritmo correspondiente a un programa que pida por teclado dos números
enteros y muestre su suma, resta, multiplicación, división y el resto (módulo) de la división. Si la operación no es conmutativa, también se mostrará el resultado invirtiendo los operadores.
Seudocódigo Diagrama de Flujo
PROGRAMA: Operaciones_aritméticas
MÓDULO: Principal
INICIO
DATOS:
VARIABLES Entero num1 Entero num2 ALGORITMO:
Leer( num1, num2)
Escribir ( “n1 + n2 = “, num1+num2) Escribir( “n1 - n2 = “, num1-num2)
Escribir(“n2 - n1 = “, num2-num1) Escribir(“n1 * n2 = “, num1*num2) Escribir(“n1 / n2 = “, num1/num2) Escribir(“n2 / n1 = “, num2/num1) Escribir(“n1 mod n2 = “, num1 mod num2)
Escribir(“n2 mod n1 = “, num2 mod num1) FIN
4 Diseñar el algoritmo correspondiente a un programa que calcule el área y el perímetro de un triángulo rectángulo dada la base y la altura.
Seudocódigo Diagrama de Flujo PROGRAMA: Triángulo_rectángulo
MÓDULO: Principal
INICIO
DATOS: VARIABLES Entero base
Entero altura Real area Real hipotenusa Real perimetro ALGORITMO:
Leer (base, altura) area = base * altura / 2
hipotenusa = Raiz (base^2 + altura^2) perimetro = base + altura + hipotenusa Escribir( “Área = “, área)
Escribir( “Perímetro = “, perímetro)
FIN
5. Diseñar el algoritmo correspondiente a un programa que tras introducir una medida expresada en centímetros la convierta en pulgadas (1pulgada = 2,54 centímetros).
Seudocódigo Diagrama de Flujo PROGRAMA: Cent_Pulgadas
MÓDULO: Principal
INICIO
DATOS: CONSTANTES
Real CM_PULG = 2.54 VARIABLES
Real cm
Real pulgadas
ALGORITMO:
Escribir (“Valor en centímetros: “)
Leer (cm) pulgadas = cm / CM_PULG Escribir( “Pulgadas: “, pulgadas)
FIN
6. Diseñar el algoritmo correspondiente a un programa que exprese en horas, minutos y segundos un tiempo expresado en segundos.
Seudocódigo Diagrama de Flujo PROGRAMA: Tiempo_segundos
MÓDULO: Principal INICIO
DATOS:
VARIABLES Entero segundos Entero minutos Entero horas ALGORITMO: Leer (segundos)
horas = segundos / 3600 segundos = segundos mod 3600 minutos = segundos / 60 segundos = segundos mod 60 Escribir( horas, “h “, minutos, “m “, segundos,
“s”) FIN
Ejercicios utilizando instrucciones SI, ENTONCES.
7.Suponga que se requiere indicar, en forma de texto, el resultado obtenido por un estudiante con
base en una calificación numérica ingresada por el usuario, si el estudiante obtuvo de nota 61 o
más el mensaje debe de indicar que aprobó el curso de lo contrario que lo reprobó.
Seudocódigo Diagrama de Flujo PROGRAMA ResultadodeExamen
MÓDULO: Principal INICIO
DATOS:
CONSTANTES
Entero CalifAprobatoria = 61 VARIABLES Entero Calificacion
ALGORITMO:
Escribir( “Ingrese la calificación”) Leer( Calificacion)
SI (Calificacion>= califAprobatoria) ENTONCES
Escribir (“Aprobado”) SINO
Escribri (“Reprobado”)
FINSI FIN
8. Resolviendo el problema anterior, solo que haremos algunas validaciones adicionales, primero
validaremos si la nota ingresada no sea menor que cero o mayor que 100 ya que estas notas no
son válidas.
Seudocódigo Diagrama de Flujo
PROGRAMA ResultadodeExamen
MÓDULO: Principal INICIO DATOS:
CONSTANTES Entero CalifAprobatoria = 61 Entero CalifMinima = 0
Entero CalifMaxima = 100 VARIABLES Entero Calificacion
ALGORITMO:
Escribir( “Ingrese la calificación”)
Leer( Calificacion)
SI Calificacion<CalifMinima ENTONCES
Escribir (“Error “) SINO
SI Calificacion>CalifMaxima ENTONCES Escribir (“Error”)
SINO
SI (Calificacion>= califAprobatoria) ENTONCES
Escribir (“Aprobado”) SINO
Escribri (“Reprobado”) FINSI
FINSI FINSI
FIN
Ejemplos utilizando ciclos Mientras
9. Escriba un algoritmo que sume 100 números reales y que al final presente el total obtenido.
Seudocódigo
PROGRAMA: Suma Enteros
MÓDULO: Principal INICIO
DATOS:
CONSTANTES
Entero TotalDeNumeros = 0
VARIABLE Entero Contador = 0
Real Numero, Suma = 0
ALGORITMO:
MIENTRAS Contador <TotalDeNumerosHACER
Escribir( “Ingrese Numero: ”) Leer(Numero)
Suma = Suma + Numero Contador = Contador + 1 FIN MIESTRAS Escribir(Suma)
FIN
Diagrama de Flujo
10. Hacer un pseudocodigo que imprima los números del 1 al 100.
Seudocódigo Diagrama de Flujo PROGRAMA: contador1
MÓDULO: Principal Ejercicio en clase
INICIO
DATOS:
VARIABLES
Entero C
ALGORITMO:
C = 0
MIENTRAS C < 101 HACER
Escribir( C) C = C + 1
FINMIENTRAS FIN
11. Hacer un pseudocodigo que imprima los números del 100 al 0, en orden decreciente.
Seudocódigo Diagrama de Flujo PROGRAMA contador2
Ejercicio en clase
MÓDULO: Principal INICIO DATOS:
VARIABLES EnteroC ALGORITMO:
C = 100 Mientras C<= 0 Hacer
Escribir ( C )
C = C- 1
FINMIENTRAS
FIN
Ejemplos utilizando Ciclos Desde (For)
12. Suponga que desea imprimir los numero de 1 a 5, para lo cual utilizaremos un ciclo Desde.
Seudocódigo Diagrama de Flujo
PROGRAMA: ImprimirNumeros MÓDULO: Principal
INICIO DATOS:
VARIABLES
ENTERO C
ALGORITMO:
DESDE C = 1 HASTA 5 HACER Escribir( C)
FIN DESDE FIN
Podemos hacer una modificación al algoritmo,
solicitando desde el teclado el número hasta
donde se desea imprimir
PROGRAMA: ImprimirNumeros
MÓDULO: Principal INICIO
DATOS:
VARIABLES
ENTERO C
ENTERO NumeroFin
ALGORITMO:
Escribir (“Ingrese número final”)
Leer(NumeroFin) DESDE C = 1 HASTA NumeroFin HACER
Escribir( C)
FIN DESDE
FIN
12. Suponga que desea imprimir la tabla de multiplicar del 1 al 10, mostrando sus resultados.
Seudocódigo Diagrama de Flujo
PROGRAMA: TablaMultiplicar
MÓDULO: Principal INICIO
DATOS:
VARIABLES
ENTERO i, j
ALGORITMO:
DESDE i = 1 HASTA 10 HACER Escribir(“Tabla del “, i )
DESDE j = 1 HASTA 10 HACER Escribir (i * j, “ “)
FIN DESDE
FIN DESDE
FIN