Ejercicios de Apoyo para clases de Seudocódigo y DF 1. Diseñar el algoritmo algoritmo correspondiente correspondiente a un programa programa que lea el valor valor correspondiente correspondiente a una distancia en millas marinas y las escriba expresadas en metros. Sabiendo que 1 milla
marina equivale a 1852 metros. Seudocódigo Ordinograma Pseudocódigo
PROGRAMA:
Millas_y_metros
MÓDULO: Principal INICIO DATOS: CONSTANTES Entero MILL_METR = 1852 VARIABLES Entero Dmillas Entero Dmetros ALGORITMO: ALGORITMO: Escribir (“Distancia en millas: ”)
Leer(Dmillas) Dmetros = Dmillas * MILL_METR FIN
Escribir ( “Distancia en metros:”, Dmetros)
Diagrama de Flujo
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 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
Diagrama de Flujo
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 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
Diagrama de Flujo
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 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
Diagrama de Flujo
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 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
Diagrama de Flujo
6. Diseñar el algoritmo correspondiente a un programa que exprese en horas, minutos y segundos un tiempo expresado en segundos. Seudocódigo 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
Diagrama de Flujo
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 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
Diagrama de Flujo
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 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 CalificacionCalifMaxima ENTONCES Escribir (“Error ”) SINO SI (Calificacion>= califAprobatoria) ENTONCES Escribir (“ Aprobado”) SINO Escribri (“Reprobado”) FINSI FINSI FINSI FIN
Diagrama de Flujo
Ejemplos utilizando ciclos Mientras 9. Escriba un algoritmo que sume 100 números reales y que al f inal 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
10. Hacer un pseudocodigo que imprima los números del 1 al 100.
Seudocódigo PROGRAMA: contador1 MÓDULO: Principal INICIO DATOS:
Diagrama de Flujo Ejercicio en clase
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 PROGRAMA contador2
Diagrama de Flujo Ejercicio en clase
MÓDULO: INICIO
Principal
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 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
Diagrama de Flujo
12. Suponga que desea imprimir la tabla de multiplicar del 1 al 10, mostrando sus resultados.
Seudocódigo 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
Diagrama de Flujo