# 5.12: C# Examples

## Temperature

// This program displays a temperature conversion table showing Fahrenheit
// temperatures from 0 to 100, in increments of 10, and the corresponding
// Celsius temperatures using While, Do While, and For loops.
//
// 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)
{
WhileLoop();
DoLoop();
ForLoop();
}

private static void WhileLoop()
{
double fahrenheit;
double celsius;

fahrenheit = 0;
while (fahrenheit <= 100)
{
celsius = CalculateCelsius(fahrenheit);
DisplayResult(fahrenheit, celsius);
fahrenheit += 10;
}
Console.WriteLine();
}

private static void DoLoop()
{
double fahrenheit;
double celsius;

fahrenheit = 0;
do
{
celsius = CalculateCelsius(fahrenheit);
DisplayResult(fahrenheit, celsius);
fahrenheit += 10;
} while (fahrenheit <= 100);
Console.WriteLine();
}

private static void ForLoop()
{
double fahrenheit;
double celsius;

for (fahrenheit = 0 ; fahrenheit <= 100 ; fahrenheit += 10)
{
celsius = CalculateCelsius(fahrenheit);
DisplayResult(fahrenheit, celsius);
}
Console.WriteLine();
}

{
Console.WriteLine("F°\tC°");
}

public static double CalculateCelsius(double fahrenheit)
{
double celsius;

celsius = (fahrenheit - 32) * 5 / 9;

return celsius;
}

private static void DisplayResult(double fahrenheit, double celsius)
{
Console.WriteLine(fahrenheit.ToString() + "\t" + celsius.ToString());
}
}

### Output

F°	C°
0	-17.7777777777778
10	-12.2222222222222
20	-6.66666666666667
30	-1.11111111111111
40	4.44444444444444
50	10
60	15.5555555555556
70	21.1111111111111
80	26.6666666666667
90	32.2222222222222
100	37.7777777777778

F°	C°
0	-17.7777777777778
10	-12.2222222222222
20	-6.66666666666667
30	-1.11111111111111
40	4.44444444444444
50	10
60	15.5555555555556
70	21.1111111111111
80	26.6666666666667
90	32.2222222222222
100	37.7777777777778

F°	C°
0	-17.7777777777778
10	-12.2222222222222
20	-6.66666666666667
30	-1.11111111111111
40	4.44444444444444
50	10
60	15.5555555555556
70	21.1111111111111
80	26.6666666666667
90	32.2222222222222
100	37.7777777777778


## References

• Wikiversity: Computer Programming