TP5
TP5
1. Especificar un módulo esPar cuya entrada es un número y el retorno es true si el número ese par, false
caso contrario.
El programa principal deberá solicitar un número y utilizando el módulo esPar, informe por
ejemplo: “el nro 10 es: par” o bien “el nro 51 es: impar”.
2. Especificar un módulo que a partir de dos números (num1, num2) retorne true si el primero es mayor
al segundo (num1>num2), false caso contrario.
3. Los exámenes finales en la universidad se aprueban obteniendo 4 o una nota superior. Especifique:
a) Un módulo que dada una nota retorne true si con la nota se aprueba, false caso contrario.
b) Un programa principal que solicite la nota muestre por pantalla si el alumno aprobó o
desaprobó. Considere que si la nota está fuera del rango 0 a 10 deberá mostrar un cartel de error
que diga “nota inválida”.
929 es capicúa
922 NO es capicúa
5. Un múltiplo de un número es otro número que lo contiene un número entero de veces. Diseñar un
módulo que dado dos números enteros A y B, devuelva (retorrne) true si A es múltiplo de B y false
caso contrario. Por ejemplo: 28 es múltiplo de 7, por lo tanto la respuesta es true.
Pág. 1 de 4
FACULTAD DE INFORMATICA
CÁTEDRA INTRODUCCIÓN A LA PROGRAMACION
Ejemplo de múltiplos de 7:
6. Una empresa lleva el control de la productividad por mes utilizando un factor (número entero) de
acuerdo al siguiente listado:
enero, febrero y marzo tienen factor 15
abril, mayo y junio factor 17
julio y agosto factor 19
septiembre, octubre y noviembre factor 20
diciembre factor 21
a) Especificar un módulo cuya entrada sea el nombre del mes y retorne el valor del factor.
b) Especificar un programa que calcule la productividad de un mes dado, conociendo que la
productividad es igual al número de artículos producidos en el mes, multiplicado por el factor que
le corresponde al mes proporcionado.
Ejemplo: En el mes de julio se produjeron 100 artículos, por lo tanto la productividad es: 1900
a) cobra $850 hasta un máximo de 300 km de distancia recorrida. (Ejemplo: Si el auto alquilado
recorrió 250 km, el monto a cobrar es $850)
b) Para más de 300km y hasta 1000km, cobra $850 más un monto adicional de $10.5 por cada
kilómetro en exceso sobre 300km. (Ejemplo: Si el auto alquilado recorrió 350 km, el monto a
cobrar es $850 + 10.5*50)
c) Para más de 1000km, cobra $850 más un monto adicional de $10.5 por cada kilómetro en exceso
sobre 300km hasta los 1000km y $8.5 por cada kilómetro en exceso sobre 1000. (Ejemplo: Si el
auto alquilado recorrió 1550 km, el monto a cobrar es $850 + 10.5*700+8.5*550)
Pág. 2 de 4
FACULTAD DE INFORMATICA
CÁTEDRA INTRODUCCIÓN A LA PROGRAMACION
Los precios ya incluyen el 21% del IVA. (Ejemplo: si el monto a pagar es $1375, entonces $238.64
corresponden al impuesto IVA y $1136.36 corresponde al alquiler)
Especifique un programa que determine el monto a pagar por el alquiler de un vehículo y el monto
incluido del impuesto. (Considerar la especificación de un módulo para calcular el valor del alquiler
y otro módulo para calcular el impuesto)
8. Diseñe un Programa que determine quienes son contemporáneos (tienen la misma edad) entre tres
personas, por ejemplo Juan, Mario y Pedro. El algoritmo debe responder alguna de las siguientes
frases: “son contemporáneos”, “ninguno es contemporáneo”, “Juan y Mario son contemporáneos”,
etc. Ejemplos:
Ninguno es contemporáneo.
Especifique otro Módulo cuyo parámetro de entrada sea el IMC y como valor de retorno un texto con
la clasificación de la OMS del estado nutricional de una persona según la siguiente tabla:
Clasificación IMC
Bajo Peso < 18,50
Normal 18,5 - 24,99
Sobrepeso 25,00 - 29,99
Pág. 3 de 4
FACULTAD DE INFORMATICA
CÁTEDRA INTRODUCCIÓN A LA PROGRAMACION
Desde un programa principal, pregunte los datos de peso y altura a una persona y utilice las dos funciones
creadas para indicarle su estado nutricional.
10. Una empresa quiere transmitir datos mediante la línea telefónica, pero les preocupa que sus teléfonos pudieran
estar intervenidos. Los números que se necesitan trasmitir son enteros de cuatro dígitos. El número se encripta
de la siguiente manera: reemplace cada dígito con el residuo de la división entre “la suma del dígito más 7” y
10. Posteriormente, intercambie el primer dígito con el tercero, e intercambie el segundo dígito con el cuarto.
También se necesita realizar el proceso inverso: dado un entero encriptado, desencriptarlo para formar el
número original.
Especifique un Módulo para la encriptación cuya entrada es un número y la salida es un número encriptado.
Luego especifique una función para la desencriptación, cuya entrada es un número encriptado y la salida es
el número desencriptado.
Observación: Puede que los números obtenidos sean de menos de cuatro dígitos. Por ejemplo el número 3333
queda encriptado como un 0, y si ingresa 0 en la desencriptación volverá a generar el número 3333.
Especifique un programa principal que solicite un número de 4 dígitos al usuario, si el número ingresado
tiene 4 o menos cifras (están entre 0 y 9999), muestre el número encriptado y luego muestre el número
desencriptado utilizando la funciones correspondientes. En caso que el número ingresado por el usuario no
sea de 4 dígitos, mostrar un cartel de error.
Pág. 4 de 4