using System;
namespace Answer {
internal static class Program {
private static void Main() {
double t;
var count = 0;
while (true) {
switch (InputPrompt("C or F >>> ").ToUpper()) {
case "C":
t = InputTemperature("T, °C: ");
Console.WriteLine(CelsiusToFahrenheit(t));
count = 0;
break;
case "F":
t = InputTemperature("T, °F: ");
Console.WriteLine(FahrenheitToCelsius(t));
count = 0;
break;
default:
Console.WriteLine("Error!");
++count;
break;
}
if (count == 3) break;
}
}
private static string CelsiusToFahrenheit(double t) {
return string.Format("{0:F1} °F", 1.8 * t + 32.0);
}
private static string FahrenheitToCelsius(double t) {
return string.Format("{0:F1} °C", 5.0 * (t - 32.0) / 9.0);
}
static public string InputPrompt(string prompt) {
string? line;
do {
Console.Write(prompt);
line = Console.ReadLine() ?? "";
} while (line.Trim() == "");
return line;
}
private static double InputTemperature(string prompt) {
while (true) {
if (double.TryParse(InputPrompt(prompt).Replace(',', '.'), out double value)) {
return value;
}
}
}
}
}
class Program
{
public static void Main(string[] args)
{
string cf;
float cf1;
float cf2;
string otvet;
Console.WriteLine("celsiy ili Farengeit");
while (true)
{
otvet = Console.ReadLine();
switch (otvet)
{
case "C":
Console.WriteLine("vvedi gradus chepushila: ");
cf = Console.ReadLine();
float.TryParse(cf, out cf1);
Console.WriteLine(cl);
break;
case "F":
Console.WriteLine("vvedi gradus chepushila: ");
cf = Console.ReadLine();
float.TryParse(cf, out cf2);
Console.WriteLine(fr);
break;
default:
Console.WriteLine("net takogo otveta");
break;
}
}
}
public static float cl(float cf1)
{
float otvetC = (float)(32 + (1.8 * cf1));
return otvetC;
}
public static float fr(float cf2)
{
float otvetF = (float)(32 + (1.8 * cf2));
return otvetF;
}
}