Universidad de Antioquia Departamento de Ingeniería Electrónica y Telecomunicaciones Informática I Taller 3 Python Parte I: Estructuras de Control Secuenciales y de Decisión. En todos los programas deberá dar la información adecuada al usuario para su correcta ejecución. Recuerde realizar el código y la presentación en pantalla de manera ordenada. 1. [S] Diseñar un programa que convierta una distancia de kilómetros a millas. La salida debe tener la siguiente forma: La distancia en millas de …km es … 2. [S] Diseñar un programa que calcule el área y el perímetro de un triángulo rectángulo dada la base y la altura (sus dos catetos). La salida debe tener la siguiente forma: El área del triangulo de base … cm y altura … cm es … cm2 3. [S] Diseñe un programa que lea dos números y calcule su suma, promedio y la suma de los cuadrados de los números. La salida debe tener la siguiente forma: La suma de … y … es … 4. [S] Diseñar un programa que lea el radio de un círculo y que el imprima su diámetro, su perímetro y su área. Utilice el valor constante 3,14159 para “pi”. La salida debe tener la siguiente forma: El área del circulo de radio …cm es …cm2 5. [D] Crear un programa que lea dos números y que escriba el mayor de los dos. Si los valores son iguales imprima en pantalla que hay un error en los datos. La salida debe tener la siguiente forma: El número … es mayor que … 6. [D] Diseñe un programa que lea un entero y determine si es par o impar. La salida debe tener la siguiente forma: El número … es … 7. [D] Diseñar un programa que lea tres números e imprima el mayor de los tres. La salida debe tener la siguiente forma: El mayor numero entre …, … y … es … 8. [D] Diseñar un programa que lee un valor entero que representa su correspondiente mes del año. Imprimir el nombre del mes. La salida debe tener la siguiente forma: El mes … es … 9. [D] Diseñar un programa que al introducir una cantidad de dinero expresado en pesos nos indique cuántas monedas de 100, 25, 10, 5, 2,1 son necesarias. 10. [D] Diseñar un programa que lea tres números e indique el tipo de triángulo que forman (isósceles, equilátero, escaleno). Comprobar que los números realmente formen un triángulo, sino emitir el error. 11. [D] Realizar un programa que capture la edad de un usuario en años y de acuerdo a la misma, indicar si es un bebe, un niño o un adulto y mostrar su edad en meses 12. [D] Escriba un programa que pida dos números enteros y muestre si el mayor es múltiplo del menor. Universidad de Antioquia Departamento de Ingeniería Electrónica y Telecomunicaciones Informática I Taller 3 13. [D] Realizar un menú de 5 opciones y mediante una selección ejecutar la opción que se desee. La forma del menú será la siguiente: MENU 1. 2. 3. 4. El área de un Trapecio El área de un Triangulo El área de un Rectángulo El área de un Circulo Seleccione una opción: 14. [D]Realizar calculadora de dos variables usando un menú de selección, como se muestra a continuación: MENU 1. Suma 2. Resta 3. Multiplicación 4. División Seleccione una opción: 15. [D] Escribir un programa para leer dos números enteros con el siguiente significado: El valor del primer número entero representa un momento del día en un reloj de 24 horas, de modo que 1245 representa doce y cuarenta y cinco de la tarde El segundo entero representa un tiempo de duración de la misma manera, por lo que 345 representa tres horas y 45 minutos. Esta duración se va a agregar al primer número, y el resultado será impreso en la misma notación, en este caso 1630, que es el tiempo de 3 horas y 45 minutos después de 12:45. Recuerde que el máximo en las horas son 23 y el máximo en los minutos son 59. 16. [D] Diseñar un programa que lea como entrada tres enteros que representa una fecha como el día, mes, año. Este debe imprimir el número de día, mes y año de la fecha del día siguiente. Típica de entrada: 28 2 1991 La salida típica: Fecha siguiente al día 28:02:1991 es 01:03:1991. Nota: tener en cuenta los años bisiestos. Universidad de Antioquia Departamento de Ingeniería Electrónica y Telecomunicaciones Informática I Taller 3 Parte II: Estructura de Control Repetitiva En todos los programas deberá dar la información adecuada al usuario para su correcta ejecución. Además debe existir un caracter para terminar la ejecución, el cual debe ser informado al usuario, por ejemplo: ingrese -1 para finalizar. Recuerde realizar el código y la presentación en pantalla de manera ordenada. 17. [R] Los conductores están preocupados por el millaje (millas/galón) que obtienen sus automóviles. Un conductor ha conservado el registro de las millas recorridas y los galones gastados. Desarrolle un programa que reciba de entrada las millas y los galones utilizados. El programa deberá calcular y presentar las millas por galón logradas en cada recorrido. Tras procesar toda la información de entrada, el programa deberá calcular e imprimir el millaje combinado por galón de todos los tanques llenos. Básese en la siguiente figura para entender el funcionamiento del programa: Ingrese los galones utilizado (-1 para terminar): 12.8 Ingrese las millas manejadas: 287 La relación millas/galon para este tanque fue: 22.421875 Ingrese los galones utilizado (-1 para terminar): 10.3 Ingrese las millas manejadas: 200 La relación millas/galon para este tanque fue: 19.417475 Ingrese los galones utilizado (-1 para terminar): 5 Ingrese las millas manejadas: 120 La relación millas/galon para este tanque fue: 24.000000 Ingrese los galones utilizado (-1 para terminar): -1 El promedio global de millas/galon fue: 21.601423 Fin del programa!!! 18. [R] Una gran compañía de productos químicos paga por comisión a sus agentes de ventas. Estos reciben cada semana $200, más el 9% de sus ventas. Por ejemplo, un agente que venda $5000 en químicos, en una semana recibirá $200, más el 9% de $5000, es decir, un total de $650. Desarrolle un programa que acepte como entradas las ventas netas de cada semana y calcule y despliegue sus ingresos. Al finalizar, el programa debe desplegar la cantidad total y el promedio del salario del vendedor. Básese en la siguiente figura que ilustra como funcionaria el programa para realizarlo: Ingrese las ventas en dólares de la semana (-1 para terminar): 5000 El salario es $650.00 Ingrese las ventas en dólares de la semana (-1 para terminar): 6000 El salario es $740.00 Ingrese las ventas en dólares de la semana (-1 para terminar): 7000 El salario es $830.00 Ingrese las ventas en dólares de la semana (-1 para terminar): -1 Total pagado: $2220.00 Promedio salario: $740.00 Universidad de Antioquia Departamento de Ingeniería Electrónica y Telecomunicaciones Informática I Taller 3 Fin del programa!!! 19. [R] Una oficina de seguros ha reunido datos concernientes a todos los accidentes de tránsito ocurridos en el área metropolitana de Medellín en el último año. Por cada conductor involucrado en un accidente se toman los siguientes datos: año de nacimiento, sexo (1: Femenino, 2: Masculino), registro del carro (1: Medellín, 2: Otras ciudades). Hacer un programa que muestre: a) El porcentaje de conductores menores de 25 años b) El porcentaje de conductores del sexo femenino. c) El Porcentaje de conductores cuyos carros están registrados fuera de Medellín. 20. [R] Escriba un programa que sume una cierta cantidad de números enteros. Suponga que el primer entero que se lee especifica el número de valores que faltan por introducir. Su programa deberá leer un solo valor por instrucción de entrada. Ingrese el número de números a sumar (-1 para terminar): 5 n1: 130 n2: 200 n3: 50 n4: 800 n5: 511 La suma es: 1691 Ingrese el número de números a sumar (-1 para terminar): -1 Fin del programa!!! 21. [R] Diseñar un programa que solicite el valor de x y muestre por pantalla el resultado de evaluar x^4 – x^2 + 1 (Nota: desarrollarlo mediante ciclos, no utilice la función pow). 22. [R] Realice un programa que imprima los divisores de un número entero positivo dado. 23. [R] Realizar un programa que imprima los primeros N números primos. N se ingresa por teclado . 24. [R] Hacer un programa que determine la suma del valor menor y mayor de un grupo de 4 datos. 25. [R] Realizar un programa que determine si de dos números ingresados uno es múltiplo del otro. 26. [R] Escriba un programa que lea un número binario y lo convierta a decimal. El usuario escribirá cuántos dígitos binarios va a escribir, además debe decidir si el número es negativo o positivo, para esto el bit más significativo (el último bit) será 0 si es positivo o 1 si es negativo. 27. [R] Haga un programa que lea un número entero y muestre en pantalla su factorial. Use un ciclo for. 28. [R] Desarrollar un programa que realice la siguiente serie: 1 2 4 7 11 16 22 29 37… El usuario debe indicar cuantos dígitos de la serie deben ser mostrados. Po ejemplo: Ingrese la cantidad de digitos de la serie (-1 para terminar): 7 Universidad de Antioquia Departamento de Ingeniería Electrónica y Telecomunicaciones Informática I Taller 3 Serie: 1 2 4 7 11 16 22 Ingrese la cantidad de digitos de la serie (-1 para terminar): 3 Serie: 1 2 4 Ingrese la cantidad de digitos de la serie (-1 para terminar): 5 Serie: 1 2 4 7 11 Ingrese la cantidad de digitos de la serie (-1 para terminar): -1 Fin del programa!!! 29. [R] Una frutería ofrece las manzanas con descuento según la siguiente tabla: Numero de manzanas compradas 0–2 3–5 6 – 10 11 en adelante % de descuento 0% 10% 15% 20% Determinar cuánto deberá pagar una persona que compre manzanas en esa frutería. 30. [R] Escriba un programa que imprima los siguientes patrones por separado, cada uno debajo del anterior, el usuario debe ingresar el número de filas de cada patrón. Use ciclos for para generar los patrones. Ojo, los asteriscos se imprimen usando la instrucción printf(“*”). Sugerencia, los últimos 2 patrones requieren que cada línea se inicie con una cantidad adecuada de espacios. A continuación se muestran los patrones: Cantidad de filas: 6 * ** *** **** ***** ****** Cantidad de filas: 5 ***** **** *** ** * Cantidad de filas: 4 **** *** ** * Universidad de Antioquia Departamento de Ingeniería Electrónica y Telecomunicaciones Informática I Taller 3 Cantidad de filas: 7 * ** *** **** ***** ****** ******* Nota: Estas secuencias se generan usando ciclos anidados. 31. [R] Escriba un programa que lea un número binario y lo convierta a decimal. El programa debe continuar pidiendo valores e imprimiendo resultados hasta que la entrada sea no numérica. 32. [R] Escriba un programa que imprima una tabla en la que cada línea muestre un número entero, su cuadrado y su cubo. Pídale al usuario que ingrese los límites superior e inferior para la tabla. Use un ciclo for. 33. [R] En un curso se practican 4 evaluaciones con los siguientes porcentajes: 25%, 20%, 25% y 30%. Para cada estudiante se informa el código y las 4 notas. Hacer un programa que calcule la nota definitiva de cada estudiante, el promedio de notas definitivas del curso y el porcentaje de perdedores. Sugerencia: Asuma que el curso está compuesto por N estudiantes, usted es libre de asignar el valor de N, 50 o 10 por ejemplo. 34. [R] Un restaurante paga a sus meseros dos clases de comisiones: Una comisión del 7% sobre toda venta. Otra comisión que depende del tipo de venta: 15% si la venta es de contado, 10% si la venta se hizo en cheque y, 5% si se hizo con tarjeta de crédito. El restaurante tiene por cada venta: Identificación de vendedor (1, 2, 3). Tipo de venta (1: contado; 2: cheque; 3: Tarjeta). Cuantía de la venta. Elaborar un programa que obtenga el total a pagar a cada uno de los 3 empleados (un empleado puede realizar varias ventas). Sugerencia: Use como condición del ciclo que el numero este entre 1 y 3 que son los números de los empleados de tal manera que si el usuario digita un numero diferente de estos, por ejemplo 4 es porque ya no hay mas ventas por lo que el programa debe salirse del ciclo para proceder con el despliegue de la información del total a pagar a cada empleado. 35. [R] Un almacén de escritorios hace los siguientes descuentos: Si el cliente compra menos de 5 unidades se le da un descuento del 10% sobre la compra; si el número de unidades es mayor o igual a 5 pero menos de 10 se le otorga un 20% y, si son 10 o más se le da un 40%. Hacer un programa que determine cuanto debe cuanto debe pagar un cliente si el valor de cada escritorio es de $800000.usuario deberá elegir una opción y el programa deberá mostrar el resultado por pantalla. 36. [R] Escriba un programa que pida limites superior e inferior, calcule la suma de los cuadrados de los enteros que van desde el límite inferior hasta el límite superior y Universidad de Antioquia Departamento de Ingeniería Electrónica y Telecomunicaciones Informática I Taller 3 despliegue el resultado. El programa deberá continuar solicitando límites superior e inferior y mostrando resultados hasta que el usuario ingrese un límite superior que sea igual que el límite inferior. Un ejemplo de cómo debería correr el programa: Ingrese limites inferior y superior: 5 7 La suma de los cuadrados de los enteros desde 5 hasta 7 es 110 Ingrese el siguiente conjunto de límites: 2 3 La suma de los cuadrados de los enteros desde 2 hasta 3 es 13 Ingrese el siguiente conjunto de límites: 2 2 Hasta pronto.