Principios de algoritmos UTP – resolución de examen final Nº 4

Resolución de un examen final de Principios de algoritmos de la UTP. Cada ejercicio se resuelve mediante un algoritmo bajo el paradigma de la programación estructurada aplicando las estructuras de control: secuenciales, selectivas y repetitivas. La representación de los algoritmos es a través de pseudocódigo y diagramas de flujo utilizando Pseint.

PREGUNTA 1

Desarrollar un algoritmo que permita realizar para N empleados:

  • Leer los salarios, validando que sean entre 1000 y 6000.
  • Mostrar un reporte con el porcentaje de empleados que ganan menos de 1800, entre 1800 y 3500, y más de 3500.
  • Mostrar el promedio de salarios.

Pseint

Pseudocódigo

Diagrama de flujo

PREGUNTA 2

Crear un programa en pseudocódigo para un estacionamiento que cumpla con las siguientes condiciones:

  1. Se debe ingresar la placa del vehículo.
  2. Se ingresa el tiempo que el vehículo permaneció parqueado en minutos.
  3. Si el vehículo es una motocicleta se cobra S/ 0.02 el minuto, S/ 0.25 el minuto si es un auto y S/ 0.30 si es una camioneta.
  4. Si el vehículo permanece más de 1 hora se hace un descuento del 10%; si permanece más de 2 horas, un 20%; si son más de 3 horas, un 30%.
  5. Se debe mostrar un cuadro resumen que indique: la placa, el tiempo en horas y minutos, el precio base, el descuento y el importe final.
  6. El algoritmo solo debe permitir ingresar los tipos de vehículos mencionados y una cantidad de minutos mayor a cero, en caso no se ingresen valores correctos debe volver a pedirlos sin finalizar la ejecución.

Se evaluará:

  •  Validar el tipo de vehículo.
  • Validar la cantidad de minutos.
  • Calcular el precio base.
  • Calcular el descuento.
  • Calcular el precio final.
  • Calcular el tiempo en horas y minutos. Por ejemplo, si se ingresa 200 minutos, se debe mostrar 3 horas y 20 minutos.
  • Mostrar el cuadro resumen.

Pseint

Pseducódigo

Diagrama de flujo

PREGUNTA 3

Realizar prueba de escritorio al siguiente algoritmo.

Prueba de escritorio

Pseint

Pseudocódigo

Ejercicios resueltos de principios de algoritmos UTP en Pseint

Se presentan dos ejercicios resueltos en Pseint de principios de algoritmos de la UTP

Ejercicio 1

En un centro de estudios de nivel superior, se registran los datos de n alumnos como nombre, código, carrera, edad y promedio ponderado. Las carreras profesionales que brinda a los alumnos son: Contabilidad, Derecho, Matemáticas, Ingeniería de Sistemas y Arquitectura. 

Se requiere:

1) Ingreso de datos.
2) Cantidad de alumnos de Derecho con promedio mayor a 16.
3) Promedio de los promedios ponderados de Contabilidad.

Pseudocódigo en Pseint

Captura de pantalla de la ejecución del pseudocódigo

Explicación del pseudocódigo

En la línea 2 se define una variable n como un número entero, la cual servirá para almacenar la cantidad de alumnos que se ingresarán. En las líneas 3, 4 y 5 se definen variables para almacenar el nombre, código, carrera y edad de los alumnos, todas del tipo caracter y entero, respectivamente. En la línea 6 se define una variable para almacenar el promedio ponderado de los alumnos, del tipo real. En las líneas 7, 8 y 9 se definen variables adicionales para realizar algunos cálculos específicos. La variable cantidadAlumnosDerechoPromedioMayor16 se utiliza para contar la cantidad de alumnos de Derecho con promedio mayor a 16, la variable cantidadAlumnosContabilidad se utiliza para contar la cantidad de alumnos de Contabilidad y la variable sumaPromedioPonderadoContabilidad se utiliza para sumar los promedios ponderados de los alumnos de Contabilidad.

En las líneas 10 a 13 se utiliza un bucle Repetir-Hasta Que para solicitar al usuario que ingrese la cantidad de alumnos que se van a registrar. Este ciclo se repetirá hasta que el valor ingresado por el usuario sea mayor a cero.

En las líneas 18 a 60 se utiliza un bucle Para para ingresar los datos de cada uno de los alumnos. En cada iteración se solicita al usuario que ingrese el nombre, código, carrera, edad y promedio ponderado del alumno. También se realiza una operación para contar aquellos alumnos de Derecho con promedio mayor a 16 y otra para contar la cantidad de alumnos de Contabilidad y sumar sus promedios ponderados.

En la línea 62 se escribe la cantidad de alumnos de Derecho con promedio mayor a 16.

En las líneas 65 a 71 se realiza una operación para calcular el promedio de los promedios ponderados de los alumnos de Contabilidad. Si la cantidad de alumnos de Contabilidad es mayor a cero, se calcula y se escribe el promedio de los promedios ponderados. Si la cantidad de alumnos de Contabilidad es cero, se escribe un mensaje informando que no se ingresaron alumnos de Contabilidad.

Ejercicio 2

Cineplanet ha lanzado una oferta durante todo el mes que consiste en un porcentaje de descuento al costo de la entrada según el día de la semana, la edad y el sexo de una persona.

Se conoce que el costo de cada entrada es de S/.30

Elabore un algoritmo que permita obtener el descuento aplicado y el costo final de la entrada. Determinar los siguiente:

1) Ingreso de datos
2) Cálculo del descuento
3) Mostrar el descuento aplicado y el costo final de la entrada

Pseudocódigo en Pseint

Captura de pantalla de la ejecución del pseudocódigo

Explicación del pseudocódigo

Las variables utilizadas son las siguientes:

  • costoEntrada (línea 2): Variable de tipo Real que almacena el precio regular de una entrada al cine.
  • dia (línea 3): Variable de tipo Entero que almacena el día de la semana en que se realizará la función.
  • edad (línea 3): Variable de tipo Entero que almacena la edad del cliente.
  • sexo (línea 4): Variable de tipo Caracter que almacena el sexo del cliente.
  • descuento (línea 5): Variable de tipo Real que almacena el porcentaje de descuento que se aplicará sobre el precio regular.
  • montoDescuento (línea 5): Variable de tipo Real que almacena el monto del descuento en soles.
  • costoFinal (línea 5): Variable de tipo Real que almacena el costo final de la entrada en soles, después de aplicar el descuento correspondiente.

En la línea 7 se establece el precio regular de la entrada en S/ 30.

En las líneas 9 a 12 se solicita al usuario ingresar su edad. Se utiliza un bucle repetir-hasta-que para asegurarse de que el valor ingresado sea válido, es decir, que la edad sea mayor o igual a cero y menor o igual a noventa.

En las líneas 14 a 19 se solicita al usuario ingresar su sexo. Se utiliza el bucle repetir-hasta-que para asegurarse de que el valor ingresado sea válido, es decir, que sea “M” o “F”.

En las líneas 21 a 31 se solicita al usuario ingresar el día de la semana en que se realizará la función. Se utiliza un tercer bucle repetir-hasta-que para asegurarse de que el valor ingresado sea válido, es decir, que el día sea un número entre 1 y 7.

En las líneas 33 a 49 se evalúan las condiciones de descuento correspondientes a cada combinación de edad, sexo y día de la semana. Si se cumple alguna de estas condiciones, se asigna un porcentaje de descuento a la variable descuento.

En las líneas 51 y 52 se calcula el monto del descuento y el costo final de la entrada, respectivamente, utilizando la fórmula:

montoDescuento = costoEntrada * descuento y

costoFinal = costoEntrada - montoDescuento.

Finalmente, en las líneas 54 a 57 se muestra al usuario el precio regular de la entrada, el porcentaje de descuento, el monto del descuento y el costo final de la entrada.

¿Necesitas ayuda para realizar algún ejercicio? Ponlo en los comentarios.