27.5.3: C# Examples
-
- Last updated
- Save as PDF
Temperature
The temperature program main function is listed twice, once using if-then-else and once using switch, followed by the supporting functions.
If Then Else
// This program asks the user to select Fahrenheit or Celsius conversion // and input a given temperature. Then the program converts the given // temperature and displays the result. // // References: // https://www.mathsisfun.com/temperature-conversion.html // https://en.wikibooks.org/wiki/C_Sharp_Programming using System; public class Temperature { public static void Main(string[] args) { string choice; choice = GetChoice(); if (choice == "C" || choice == "c") { ProcessCelsius(); } else if (choice == "F" || choice == "f") { ProcessFahrenheit(); } else { Console.WriteLine("You must enter C to convert to Celsius or F to convert to Fahrenheit."); } }
Switch
public static void Main(string[] args) { string choice; choice = GetChoice(); switch (choice) { case "C": case "c": ProcessCelsius(); break; case "F": case "f": ProcessFahrenheit(); break; default: Console.WriteLine("You must enter C to convert to Celsius or F to convert to Fahrenheit."); break; } }
Supporting Functions
public static string GetChoice() { string choice; Console.WriteLine("Enter C to convert to Celsius or F to convert to Fahrenheit:"); choice = Console.ReadLine(); return choice; } public static void ProcessCelsius() { double temperature; double result; temperature = GetTemperature("Fahrenheit"); result = CalculateCelsius(temperature); DisplayResult(temperature, "Fahrenheit", result, "Celsius"); } public static void ProcessFahrenheit() { double temperature; double result; temperature = GetTemperature("Celsius"); result = CalculateFahrenheit(temperature); DisplayResult(temperature, "Celsius", result, "Fahrenheit"); } public static double GetTemperature(string scale) { double temperature; Console.WriteLine("Enter " + scale + " temperature:"); temperature = Convert.ToDouble(Console.ReadLine()); return temperature; } public static double CalculateCelsius(double fahrenheit) { double celsius; celsius = (fahrenheit - 32) * 5 / 9; return celsius; } public static double CalculateFahrenheit(double celsius) { double fahrenheit; fahrenheit = celsius * 9 / 5 + 32; return fahrenheit; } public static void DisplayResult(double temperature, string fromScale, double result, string toScale) { Console.WriteLine(temperature + "° " + fromScale + " is " + result + "° " + toScale); } }
Output
Enter C to convert to Celsius or F to convert to Fahrenheit: c Enter Fahrenheit temperature: 100 100° Fahrenheit is 37.7777777777778° Celsius Enter C to convert to Celsius or F to convert to Fahrenheit: f Enter Celsius temperature: 100 100° Celsius is 212° Fahrenheit Enter C to convert to Celsius or F to convert to Fahrenheit: x You must enter C to convert to Celsius or F to convert to Fahrenheit.
References
- Wikiversity: Computer Programming