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; } } }