1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
-- 23-02-2012 -- Escriba un programa que convierta grados Celsius en Fahrenheit y viceversa, a elección del usuario. La relación entre ambos es F=(9/5)*C+32. -- Se adjuntan las librerías: with Ada.Text_IO; with Ada.float_Text_IO; with Ada.integer_Text_IO; -- Programa principal: procedure ada7x02 is -- Se cargan las librerías adjuntadas previamente: use Ada.Text_IO; use Ada.float_Text_IO; use Ada.integer_Text_IO; -- Definicion de variables: opcion:integer; C,F:float; begin -- Menú de opciones: put_line("Escoja una opcion:"); put_line(" 1. Celsius a Fahrenheit"); put_line(" 2. Fahrenheit a Celsius"); put_line(" 3. Salir"); get(opcion); -- Condicional switch case opcion is when 1 => put("Indique los grados Celsius: "); -- Impresión de texto get(C); -- Lectura del dato skip_line; -- Salto de linea put("El resultado es: "); F := C * 9.0/5.0 + 32.0; -- Calculo del resultado put( item => F, aft => 2, exp => 0); -- Impresión del resultado en "notación corta", para ello decimos que el "item => F", tendra 2 decimales: "aft=>2" y 0 exponentes: "exp=>0" when 2 => put("Indique los grados Fahrenheit: "); get(F); skip_line; put("El resultado es: "); C := (F-32.0) * 5.0/9.0; put( item => C, aft => 2, exp => 0); when others => NULL; -- Con otro número diferente de 1 y 2 se sale de la condicional. end case; end ada7x02; |