Trabajo Estructuras Repetitivas
Realice los siguiente algoritmos (2.5 c/u 15 puntos)
Determinar de una serie de números introducidos desde teclado con la
condición de parada -1 cuál es el mayor y cuál es el menor y cuántos son
mayores a 50.
Algoritmo MayorMenorContar50
// Declaración de variables
Definir numero, mayor, menor, contadorMayores50 Como Entero
contadorMayores50 <- 0
mayor <- -99999 // Un valor muy bajo inicial
menor <- 99999 // Un valor muy alto inicial
// Bucle para leer números hasta que se introduzca -1
Escribir "Introduce un número (-1 para terminar): "
Leer numero
Mientras numero <> -1 Hacer
// Determinar mayor y menor
Si numero > mayor Entonces
mayor <- numero
Fin Si
Si numero < menor Entonces
menor <- numero
Fin Si
// Contar números mayores a 50
Si numero > 50 Entonces
contadorMayores50 <- contadorMayores50 + 1
Fin Si
// Leer el siguiente número
Escribir "Introduce un número (-1 para terminar): "
Leer numero
Fin Mientras
// Mostrar resultados
Si mayor = -99999 & menor = 99999 Entonces
Escribir "No se introdujeron números."
Sino
Escribir "El número mayor es: ", mayor
Escribir "El número menor es: ", menor
Escribir "La cantidad de números mayores a 50 es: ",
contadorMayores50
Fin Si
Fin Algoritmo
Introducir desde teclado la cantidad N de números y muestre cuantos son
pares e impares validando que los números son mayores o iguales a cero.
Algoritmo ContarParesImpares
// Declaración de variables
Definir N, numero, contadorPares, contadorImpares Como Entero
contadorPares <- 0
contadorImpares <- 0
// Solicitar la cantidad de números
Escribir "Introduce la cantidad de números (N): "
Leer N
// Validar que N sea mayor o igual a 1
Si N <= 0 Entonces
Escribir "La cantidad de números debe ser mayor o igual a 1."
Sino
// Bucle para procesar N números
Para i <- 1 Hasta N Hacer
Escribir "Introduce un número mayor o igual a 0
(número ", i, " de ", N, "):"
Leer numero
// Validar que el número sea mayor o igual a 0
Mientras numero < 0 Hacer
Escribir "El número debe ser mayor o igual a
0. Inténtalo de nuevo:"
Leer numero
Fin Mientras
// Contar pares e impares
Si numero % 2 = 0 Entonces
contadorPares <- contadorPares + 1
Sino
contadorImpares <- contadorImpares + 1
Fin Si
Fin Para
// Mostrar resultados
Escribir "La cantidad de números pares es: ",
contadorPares
Escribir "La cantidad de números impares es: ",
contadorImpares
Fin Si
Fin Algoritmo
El usuario desde pantalla ingresa N cantidad de números. Calcular la media de
los números positivos, la media de los números negativos y la cantidad de
ceros.
Algoritmo MediaPositivosNegativosCeros
// Declaración de variables
Definir N, numero, sumaPositivos, sumaNegativos, contadorPositivos,
contadorNegativos, contadorCeros Como Real
sumaPositivos <- 0
sumaNegativos <- 0
contadorPositivos <- 0
contadorNegativos <- 0
contadorCeros <- 0
// Solicitar la cantidad de números
Escribir "Introduce la cantidad de números (N): "
Leer N
// Validar que N sea mayor o igual a 1
Si N <= 0 Entonces
Escribir "La cantidad de números debe ser mayor o igual a 1."
Sino
// Bucle para procesar N números
Para i <- 1 Hasta N Hacer
Escribir "Introduce el número ", i, " de ", N, ":"
Leer numero
// Clasificar el número
Si numero > 0 Entonces
sumaPositivos <- sumaPositivos + numero
contadorPositivos <- contadorPositivos + 1
Sino
Si numero < 0 Entonces
sumaNegativos <- sumaNegativos + numero
contadorNegativos <- contadorNegativos + 1
Sino
contadorCeros <- contadorCeros + 1
Fin Si
Fin Si
Fin Para
// Calcular medias
Si contadorPositivos > 0 Entonces
mediaPositivos <- sumaPositivos / contadorPositivos
Sino
mediaPositivos <- 0
Fin Si
Si contadorNegativos > 0 Entonces
mediaNegativos <- sumaNegativos / contadorNegativos
Sino
mediaNegativos <- 0
Fin Si
// Mostrar resultados
Escribir "La media de los números positivos es: ", mediaPositivos
Escribir "La media de los números negativos es: ",
mediaNegativos
Escribir "La cantidad de ceros es: ", contadorCeros
Fin Si
Fin Algoritmo
Un vendedor realiza una cantidad N de ventas y desea saber cuántas de estas
fueron de C$ 200 o menos, cuántas fueron mayores a C$ 200 pero inferiores a
C$ 400 y cuántas de C$ 400 o superiores a tal cantidad.
Algoritmo ClasificarVentas
// Declaración de variables
Definir N, venta, contadorMenoresIgual200, contadorEntre200Y400,
contadorMayoresIgual400 Como Entero
contadorMenoresIgual200 <- 0
contadorEntre200Y400 <- 0
contadorMayoresIgual400 <- 0
// Solicitar la cantidad de ventas
Escribir "Introduce la cantidad de ventas (N): "
Leer N
// Validar que N sea mayor o igual a 1
Si N <= 0 Entonces
Escribir "La cantidad de ventas debe ser mayor o igual a 1."
Sino
// Bucle para procesar las N ventas
Para i <- 1 Hasta N Hacer
Escribir "Introduce el monto de la venta ", i, " de ", N, ":"
Leer venta
// Clasificar la venta en los rangos especificados
Si venta <= 200 Entonces
contadorMenoresIgual200 <-
contadorMenoresIgual200 + 1
Sino
Si venta < 400 Entonces
contadorEntre200Y400 <-
contadorEntre200Y400 + 1
Sino
contadorMayoresIgual400 <-
contadorMayoresIgual400 + 1
Fin Si
Fin Si
Fin Para
// Mostrar resultados
Escribir "Ventas de C$ 200 o menos: ", contadorMenoresIgual200
Escribir "Ventas mayores a C$ 200 pero inferiores a C$ 400: ",
contadorEntre200Y400
Escribir "Ventas de C$ 400 o más: ", contadorMayoresIgual400
Fin Si
Fin Algoritmo
En un almacén un cliente realiza N de compras. Calcule lo que debe pagar
cada cliente, si por cada compra tiene derecho a sacar un papelito, y
dependiendo del color, se efectúan diferentes descuentos. Si el color es
blanco(B), se realiza un descuento del 2.63% sobre la cuenta, si es verde(V),
un descuento de 4.85% y si es rojo(R), un descuento de 5.02%. Encontrar lo
que debe pagar el cliente con el descuento.
Algoritmo CalcularTotalConDescuento
// Declaración de variables
Definir N, i Como Entero
Definir totalCompra, descuento, totalPagar Como Real
Definir color Como Caracter
// Solicitar la cantidad de compras
Escribir "Introduce la cantidad de compras que realiza el cliente (N): "
Leer N
// Validar que N sea mayor o igual a 1
Si N <= 0 Entonces
Escribir "La cantidad de compras debe ser mayor o igual a 1."
Sino
// Inicializar el total a pagar por el cliente
totalPagar <- 0
// Bucle para procesar cada compra
Para i <- 1 Hasta N Hacer
Escribir "Introduce el monto de la compra ", i, ":"
Leer totalCompra
// Solicitar el color del papelito
Escribir "Introduce el color del papelito (B para blanco, V para verde, R
para rojo):"
Leer color
// Determinar el descuento según el color
Segun color Hacer
"B":
descuento <- totalCompra * 0.0263
"V":
descuento <- totalCompra * 0.0485
"R":
descuento <- totalCompra * 0.0502
De Otro Modo:
Escribir "Color inválido. No se aplicará descuento."
descuento <- 0
Fin Segun
// Calcular el total de la compra con descuento
totalCompra <- totalCompra - descuento
// Acumular el total a pagar
totalPagar <- totalPagar + totalCompra
// Mostrar el total de la compra con descuento
Escribir "El total de la compra ", i, " después del descuento es: C$",
totalCompra
Fin Para
// Mostrar el total general a pagar por el cliente
Escribir "El total a pagar por el cliente por todas las compras es: C$", totalPagar
Fin Si
Fin Algoritmo
Un grupo de 25 estudiantes presentan un examen de Física. Leer por cada
estudiante la calificación obtenida y calcule e imprima:
· La cantidad de estudiantes que obtuvieron una calificación menor a 100.
· La cantidad de estudiantes que obtuvieron una calificación de 90 o más pero
menor que 100.
· La cantidad de estudiantes que obtuvieron una calificación de 80 o más pero
menor que 90.
· La cantidad de estudiantes que obtuvieron una calificación de 70 o más pero
menor a 80.
Algoritmo CalificacionesExamenFisica
// Declaración de variables
Definir calificacion Como Entero
Definir contadorMenor100, contador90a99, contador80a89, contador70a79 Como
Entero
contadorMenor100 <- 0
contador90a99 <- 0
contador80a89 <- 0
contador70a79 <- 0
// Procesar las calificaciones de los 25 estudiantes
Para i <- 1 Hasta 25 Hacer
Escribir "Introduce la calificación del estudiante ", i, " (0 - 100):"
Leer calificacion
// Validar que la calificación esté en el rango permitido
Mientras calificacion < 0 O calificacion > 100 Hacer
Escribir "Calificación inválida. Debe estar entre 0 y 100. Inténtalo
nuevamente:"
Leer calificacion
Fin Mientras
// Clasificar la calificación en el rango correspondiente
Si calificacion < 100 Entonces
contadorMenor100 <- contadorMenor100 + 1
Fin Si
Si calificacion >= 90 Y calificacion < 100 Entonces
contador90a99 <- contador90a99 + 1
Fin Si
Si calificacion >= 80 Y calificacion < 90 Entonces
contador80a89 <- contador80a89 + 1
Fin Si
Si calificacion >= 70 Y calificacion < 80 Entonces
contador70a79 <- contador70a79 + 1
Fin Si
Fin Para
// Mostrar los resultados
Escribir "Cantidad de estudiantes con calificación menor a 100: ", contadorMenor100
Escribir "Cantidad de estudiantes con calificación entre 90 y 99: ", contador90a99
Escribir "Cantidad de estudiantes con calificación entre 80 y 89: ", contador80a89
Escribir "Cantidad de estudiantes con calificación entre 70 y 79: ", contador70a79
Fin Algoritmo