コード例 #1
0
        public static void Tmp_cmd()
        {
            bool r = true;

            while (r)
            {
                sbyte[] a = new sbyte[4] {
                    1, 2, 3, 4
                };
                Console.WriteLine("\nSección de conversión de temperatura");
                Console.ForegroundColor = ConsoleColor.Cyan;
                Console.WriteLine("\nComandos disponibles:\n{0}: Para convertir de Celsius a Fahrenheit y a Kelvins.\n{1}: Para convertir de Fahrenheit a Celsius y a Kelvins.", a[0], a[1]);
                Console.WriteLine("{0}: Para convertir de Kelvins a Celsius y a Fahrenheit.", a[2]);
                Console.Write($"{a[3]} para volver atras.");
                Console.ForegroundColor = ConsoleColor.Green;
                Console.Write("\n>> ");
                sbyte input = 1;//Establecemos este valor por sí el usuario introduce mal el número, poder iniciar el conversor de ºC
                try
                {
                    input = Convert.ToSByte(Console.ReadLine());
                }
                catch (Exception e) when(e.GetType() != typeof(FormatException))
                {
                    Console.WriteLine(e.Message);
                }
                catch (FormatException e)
                {
                    Console.WriteLine("El valor introducizo no es numérico, se iniciara el conversor ºC a ºF y a K(Es el predeterminado)");
                    Console.WriteLine(e.Message);
                }

                if (input == a[0])//Celsius a Fahrenheits y a Kelvins
                {
                    Transformador.TmpCel();
                    r = true;
                }
                else if (input == a[1]) //Fahrenheits a Celsius y Kelvins
                {
                    Transformador.TmpFahr();
                    r = true;
                }
                else if (input == a[2])//Kelvins a Celsius y a Fahrenheits
                {
                    Transformador.TmpKel();
                    r = true;
                }
                else if (input == a[3])
                {
                    Console.ForegroundColor = ConsoleColor.Green;//Cambiamos el color para volver atras y restablecerlo
                    r = false;
                }
                else
                {
                    Console.WriteLine("\nComando no encontrado, revise la ortografía");
                    r = true;
                }
            }
        }