Programming Tutorial Two

In this example you will create a sequential control structure. The program will ask for input, perform some calculations and then deliver some output. Since this program has no loops, the program is only executed once.

Program Description

Input:
Your program will request the following information from the user:
  1. The make of the car
  2. The odometer reading when the test begins (In whole miles)
  3. The odometer reading when the test ends (In whole miles)
  4. The number of gallons used (To the tenth of a gallon)
Calculation:
Your program will perform the following calculations:
  1. The total miles the car traveled in the test
  2. Calculate the Miles Per Gallon (MPG)
  3. Determine if the car is a fuel economy car (gets 30 MPG or more)
Output:
Your program will output the following data:
  1. The make of the car
  2. The total miles the car traveled in the test
  3. The Miles Per Gallon calculation for the test
  4. A statement indicating if the car has economy gas mileage

Creating the Program

While all the steps and code you need to create this program are included in this example, you may wish to see a more complete list of commands. The following link will take you to the Python Command Reference.
  • Open Notepad (Textedit if on a mac)
  • Click this link to see the PythonTutorialTwo.python starter file
  • Copy the contents into notepad
  • Save the notepad file using the name PythonTutorialTwo.py
  • Open the file using the notepad application (TextEdit if you are on a Mac)
  • Your file should look something like this ---->
Variables are used to reserve room in computer memory so we have a place to put our data. Some programming languages require you to declare your variables in advance. Python lets you declare your variables as you need them, however it is a good practice to think about what variables you will need and provide a space in memory for them.
  • Enter the code shown below after the comment that says "Initialize Variables"

    carType = "no car"
    startMiles = 0
    endMiles = 0
    gallonsUsed = 0.0
    totalMiles = 0
    milesPerGallon = 0.0
    carMessage = None

  • It is common for a program to have some sort of title that tells the user what the program does and it might include the name of the person (or Company) who wrote the program.

  • Enter the code shown below after the comment that says "Print Report Title"

    print("\n Your Name Here - Programming Tutorial Two")
  • Now we need to ask the user for the input data. When data comes into the program, we need to make sure that the computer understands what type of data it is. In Python the computer will assume the data is a character string unless we specify or cast the data as something else. If we want the data to be an integer, we will wrap the input statement in an int() cast telling the computer to interpret what the user enters as an integer. If we want the number to show fractions of a whole number (the term is floating point) we will use a float() cast.

  • Enter the code shown below after the comment that says "Get User Input Data"

    carType = input("Enter make of car: ")
    startMiles = int(input("Enter beginning odometer reading: "))
    endMiles = int(input("Enter ending odometer reading: "))
    gallonsUsed = float(input("How many gallons? "))
  • It is now time for the program to do some calculations. As it turns out we have 2 kinds of calculations in this program: 1) a calculation of user input data and 2) a calculation of a variable that has itself been calculated by this program. The first type of calculation I can do whenever I want to but I must do the 2nd type of calculation after I have performed the calculation required as its input. Lets see what I mean:

  • Enter the code shown below after the comment that says "Compute Values"

    totalMiles = endMiles - startMiles

  • Notice that the variable "totalMiles" is derived from 2 variables previously entered by the user - endMiles and startMiles, so I can place this code anywhere after the "User Input" section of the program.
  • Enter the code shown below after the comment that says "Compute Values" AND after the code entered in the previous step.

    milesPerGallon = totalMiles / gallonsUsed

  • Notice that one of the variables here (totalMiles) was not entered by the user, it was calculated in the previous step or the totalMiles variable will be incorrect.
  • Enter the code shown below after the comment that says "Compute Values" AND after the code entered in the previous step.

    if milesPerGallon > 30:
       carMessage = "Yes"
    else:
       carMessage = "No"

  • Same comment from the last section, the variable milesPerGallon was calculated in the last step, so this step must come after it.
The last task our program needs to perform is output. This is what allows you (the human) to see what the computer did and reap the rewards from the computers fast calculation ability.

Notice that when you print something back to the screen you have to specify if it is just a label for a variable (a text string) or the variable itself. The example below shows the text string labels wrapped in double quotes ("Text String") and the variables listed without any quotes.
  • Enter the code shown below after the comment that says "Print Detail Lines"

    print("\n Make of car: " ,carType)
    print("Total miles: " ,totalMiles)
    print("Miles per gallon: " ,milesPerGallon)
    print("Economy rental: " ,carMessage)
  • Save your program to your student disk. Change the name of the program so you know this is the completed version. Note: Be sure the name ends with ".py" — this is what lets the Python Interpreter identify and run your program.

Testing Your Program

  • If it is not already on your computer, you can go get the Python Interpreter from www.python.org
  • See Example 1 for details on how to set it up.
  • If the Python Interpreter is already on your computer, you should be able to
    double click on the file you created and the program will run in a window.
    Here is an example of what you should see:
Now you are ready to try the second program assignment. It functions alot like this example so use this example as a tool to help you complete assignment 2.

Return to CS5 Examples Page