IT 116: Introduction to Scripting
Homework 6

Due

Sunday, March 8th at 11:59 PM

Deliverables

There is one deliverable for this assignment

Make sure the script obeys all the rules specified in the Script Requirements page.

Specification

Your script should ask the user for a minimum Celsius temperature and then a maximum Celsius temperature.

It should then print out a Celsius to Fahrenheit conversion table for this range of Celsius temperatures.

The table should have the same format as in homework 5.

This script must contain two functions

print_table_line

This function must have the following header
def print_table_line(celsius):
This function prints one line in the table.

The line consists of the Celsius temperature, a tab, and the Fahrenheit temperature.

It should print a line that looks like this
0   32
In order to do this, the function must first convert the Celsius temperature into a Fahrenheit value.

Both temperatures must be integers.

print_conversion_table

This function must have the following header
def print_conversion_table(min, max):
This function does four things
  1. Prints the words "Celsius" and "Fahrenheit" to label the columns
  2. Prints a line of dashes, -
  3. Have a for loop
  4. Call print_table_line(celsius) inside the loop

The for loop variable must range from the minimum Celsius temperature to the maximum Celsius temperature.

Each pass through the loop must call print_table_line(celsius) with a Celsius value.

Script for this assignment

Suggestions

  1. Create the file hw6.py and add the header for the function print_table_line(celsius).
    For the body of the function write print statement that simply prints the value of the celsius parameter.
    Add the following statement after at the bottom of the script
    print_table_line(30)
    Run the code and fix any errors.
  2. In print_table_line you need to convert celsius into into a Fahrenheit value.
    Do this my adding an assignment statement about the print statement.
    This statement should calculate Fahrenheit value and assign it to the variable fahrenheit.
    Change the print statement so it print both the celsius and fahrenheit values.
    Run the code and fix any errors.
  3. Remove the print statement at the bottom of the script.
    Below the first function, add the header for the print_conversion_table function.
    There must be a blank line between the end of the previous function, and the header of the new one.
    Add a print statement that prints the labels "Celsius" and "Fahrenheit".
    Add a print statement that prints a line of dashes, -.
    Add a blank line below this function.
    Add the test code below to the bottom of your script.
    Run the code and fix any errors.
  4. Add a for loop will a loop variable that will run from the minimum to the maximum values given by the parameters.
    In the for loop add a print statement that prints the loop variable.
    Run the code and fix any errors.
  5. Remove the print statement under the for loop.
    In its place call the function print_table_line with the loop variable as the argument.
    Run the code and fix any errors.
  6. Adjust the print statement in print_table_line so the Celsius and Fahrenheit values line up with the labels printed by print_conversion_table.
    Run the code and fix any errors.

Testing on Your Machine

Unix Setup

Copy the file to Unix

Testing the script on Unix

Testing

The following test code must be added to the bottom of your script
min = int(input("Please enter the starting temperature for the table: "))
max = int(input("Please enter the ending temperature for the table: "))
print()
print_conversion_table(min, max)
Your output should look something like this