Skip to main content
Engineering LibreTexts

5.15: Python Examples

  • Page ID
    10668
  • 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/Python_Programming
    
    
    def while_loop():
        display_heading()
        fahrenheit = 0
        while fahrenheit <= 100:
            celsius = calculate_celsius(fahrenheit)
            display_result(fahrenheit, celsius)
            fahrenheit += 10
        print()
    
    
    def do_loop():
        display_heading()
        fahrenheit = 0
        while True:
            celsius = calculate_celsius(fahrenheit)
            display_result(fahrenheit, celsius)
            fahrenheit += 10
            if not(fahrenheit <= 100): 
                break
        print()
            
    
    def for_loop():
        display_heading()
        for fahrenheit in range(0, 101, 10):
            celsius = calculate_celsius(fahrenheit)
            display_result(fahrenheit, celsius)
        print()
    
    
    def display_heading():
        print("F°\tC°")
    
    
    def calculate_celsius(fahrenheit):
        celsius = (fahrenheit - 32) * 5 / 9    
        return celsius
    
    
    def display_result(fahrenheit, celsius):
        print(str(fahrenheit) + "\t" + str(celsius))
    
    
    def main():
        while_loop()
        do_loop()
        for_loop()
    
    
    main()

    Output

    F°	C°
    0	-17.77777777777778
    10	-12.222222222222221
    20	-6.666666666666667
    30	-1.1111111111111112
    40	4.444444444444445
    50	10.0
    60	15.555555555555555
    70	21.11111111111111
    80	26.666666666666668
    90	32.22222222222222
    100	37.77777777777778
    
    F°	C°
    0	-17.77777777777778
    10	-12.222222222222221
    20	-6.666666666666667
    30	-1.1111111111111112
    40	4.444444444444445
    50	10.0
    60	15.555555555555555
    70	21.11111111111111
    80	26.666666666666668
    90	32.22222222222222
    100	37.77777777777778
    
    F°	C°
    0	-17.77777777777778
    10	-12.222222222222221
    20	-6.666666666666667
    30	-1.1111111111111112
    40	4.444444444444445
    50	10.0
    60	15.555555555555555
    70	21.11111111111111
    80	26.666666666666668
    90	32.22222222222222
    100	37.77777777777778