ALGORITMOS - Universidad de Antioquia
Transcription
ALGORITMOS - Universidad de Antioquia
Universidad de Antioquia Departamento de Ingeniería Electrónica y Telecomunicaciones Informática I Taller 2 ALGORITMOS NIVEL 1 1. [S] Diseñar el algoritmo que lea el valor correspondiente a una distancia en millas marinas y las escriba expresadas en metros. Sabiendo que 1 milla marina equivale a 1852 metros. 2. [S] Diseñar el algoritmo que calcule el porcentaje descontado en una compra. El usuario debe ingresar el precio del producto y el precio pagado. 3. [S] Diseñar el algoritmo que tras introducir una medida expresada en centímetros la convierta en pulgadas (1pulgada = 2,54centímetros). 4. [S] Diseñar el algoritmo que calcule el área y el perímetro de un triángulo rectángulo dada la base y la altura (sus dos catetos). 5. [S] Diseñar un algoritmo que convierta el valor de temperatura en grados Fahrenheit a su correspondiente en grados centígrados ( ). 6. [S] Diseñar un algoritmo 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”. 7. [S] Diseñar un algoritmo que calcule el volumen de una caja dadas las dimensiones que la conforman. 8. [D] Diseñar el algoritmo que pida dos números enteros y muestre su suma, resta, multiplicación, división y el módulo de la división. Si la operación no es conmutativa, también se mostrará el resultado invirtiendo los operadores (indicar operadores invertidos en un mensaje). Nota: Recuerde que la división por cero no está definida. 9. [D] Diseñar un algoritmo que calcule el mayor y el menor de 5 números ingresados por teclado. 10. [D] Diseñe un algoritmo que lea un entero y determine si es par o impar. 11. [D] Diseñar el algoritmo que exprese en horas, minutos y segundos un tiempo dado en segundos. Ejemplo: Si ingresan 8015 tendríamos 2h-13m-35s 12. [D] Diseñar un algoritmo que al ingresarle tres valores, a continuación imprima la suma, el promedio, el producto, el menor y el mayor de estos números. 13. [D] Dada una especificación de tiempo en horas, minutos y segundos, calcule dicha especificación un segundo después. Nota: el máximo para el valor de las horas es 23, para los minutos es 59 y los segundo 59. 14. [D] Diseñar un algoritmo que permita calcular la diferencia entre dos períodos de tiempo dados en: horas, minutos y segundos. Nota: el máximo para el valor de las horas es 23, para los minutos es 59 y los segundo 59. Además siempre debe calcular la diferencia en el mismo orden: tiempo1 – tiempo2. Nunca debe dar negativa: Ejemplo:11h:40m:50s – 20h:55m:30s = 14h:45m:20s 15. [D] Diseñar un algoritmo que permita calcular la suma entre dos períodos de tiempo dados en: horas, minutos y segundos. Nota: el máximo para el valor de las horas es 23, para los minutos es 59 y los segundo 59. Ejemplo:11h:40m:50s + 20h:55m:30s =1d:8h:26m:20s Universidad de Antioquia Departamento de Ingeniería Electrónica y Telecomunicaciones Informática I Taller 2 16. [D] Realizar calculadora usando un menú de selección. La calculadora debe incluir las operaciones básicas: suma, resta, multiplicación, división, módulo y potenciación. Recuerde que la división por cero no está definida. NIVEL 2 17. [R] Diseñar un algoritmo para determinar el máximo común divisor de dos números enteros (Ayuda: usar el algoritmo de Euclides) 18. [R] Diseñar un algoritmo que calcule el valor máximo entre N valores leídos 19. [R] Diseñar un algoritmo que calcule el promedio entre N números previamente conocidos. 20. [R] Diseñar un algoritmo que determine si un número dado es primo 21. [R] Diseñar un algoritmo que imprima la suma de la serie de números 3, 6, 9…, N 22. [R] Diseñe un algoritmo que muestre la serie de Fibonacci hasta n-ésimo término. 23. [R] Diseñe un algoritmo que escriba los n términos de la siguiente serie: 1, 2, -3, -4, 5, 6, -7, -8, 9, 10, -11, -12,... 24. [R] Diseñe un algoritmo que calcule los n términos de la siguiente serie: 1/2, -9/4, 25/6, -49/8, 81/10, -121/12,... 25. [R] Desarrollar un programa que realice la siguiente serie: 1, 2, 4, 7, 11, 16, 22, 29, 37,… 26. [R] Una secuencia empieza con el número 7 y cada número sucesivo se obtiene del número previo multiplicando por 2 y restando 1. Por ejemplo, el segundo número en la secuencia es 7*2-1=13. Diseñe un algoritmo que calcule un número cualquiera de la secuencia. 27. [R] Diseñe un algoritmo que determine el nivel de la nota definitiva de N estudiantes, teniendo en cuenta que la primera nota vale el 35%, la segunda el 35% y la tercera el 30%, y los niveles son: de 0 a 2 mala, de 2 a 3 deficiente, de 3 a 4 buena, y entre 4 y 5 excelente. 28. [R] Calcule los números factoriales entre 1 y un valor previamente leído, escribiendo el número y su correspondiente valor factorial, y al final la suma de los números y la suma de sus factoriales. 29. [R] Diseñe un algoritmo que lea dos valores A y B, y encuentre AB mediante sumas únicamente. 30. [R] Diseñe un algoritmo para calcular independientemente la suma de los números pares e impares entre 1 y N. 31. [R] Diseñe un algoritmo que lea N números enteros y determinar cuántos son positivos y de esos positivos cuántos son pares. 32. [R] Diseñe un algoritmo que reciba un número de derecha a izquierda, es decir, comenzando por las unidades, luego las decenas, … Ejemplo: para ingresar 2534, ingresamos 4352. NIVEL 3 33. [R] Diseñe un algoritmo que convierte una sucesión de dígitos binarios a una cantidad en el sistema decimal. Se sabe cuántos dígitos entrarán. 34. [R] Diseñe un algoritmo que dados N estudiantes de un colegio, determine cuántos pertenecen a cado uno de los siguientes rangos de edad: Universidad de Antioquia Departamento de Ingeniería Electrónica y Telecomunicaciones Informática I Taller 2 estudiantes menores de 5 años estudiantes entre 5 y 7 años estudiantes entre 7 y 10 años estudiantes entre 10 y 12 años estudiantes mayores de 12 años 35. [R] Desarrollar un algoritmo que determine en un conjunto de N números naturales: Cuántos son menores de 15 Cuántos son mayores de 50 Cuántos están comprendidos entre 25 y 45 36. [R] Diseñe un algoritmo que determine si un número ingresado por el usuario es capicúa. No restrinja la cantidad de dígitos que puede tener el número. El usuario debe ingresar todo el número y no digito por dígito. 37. [R] Don Cecilio es un caminante que realiza un recorrido en varios días. Cada día por medio de su GPS observa la posición (x,y) en la que se encuentra. Usted decide ayudarlo desarrollando un algoritmo que, al ingresarle estos datos, le permite calcular: Cuántos días caminó Cuánto caminó en total Cuál fue el día en que más caminó y cuanto fue 38. [R] La ciudad “Far Far Away” posee una sola central hospitalaria y varias ambulancias. Las ambulancias recorren la ciudad y cuando se recibe una llamada en la central, se informa la ubicación de la emergencia (xe,ye) y la ubicación de todas las ambulancias mediante coordenadas (xi,yi). La central es el punto (0,0) u origen de coordenadas. Se sabe que existen N ambulancias en servicio. Realice un algoritmo que, dada la información necesaria, informe las coordenadas de la ambulancia más cercana al punto de emergencia. 39. [R] Un banco calcula los intereses de las cantidades depositadas por los clientes diariamente con base en las siguientes premisas. Un capital de 1000euros, con una tasa del 6% anual, renta un interés en un día de 0.06 multiplicado por los 1000euros y dividido por 365. Esta operación producirá 0.16 euros de interés y el capital acumulado será 1000.16euros. El interés para el segundo día se calculará multiplicando 0.06 por 1000.16euros y dividiendo por 365. Diseñar un algoritmo que reciba tres entradas: el capital a depositar en euros, la tasa de interés y la duración del depósito en semanas, y calcule el capital total acumulado al final del periodo de tiempo especificado. 40. [R] Diseñar un algoritmo para calcular la velocidad en metros/segundo de los corredores de una carrera de 1500 metros. Por cada corredor leerá por teclado los minutos y segundos del tiempo que ha marcado y a continuación mostrará por pantalla la velocidad correspondiente. El algoritmo finalizará cuando para un corredor lea el valor 0 para los minutos y para los segundos.