0% found this document useful (0 votes)
1K views

Lab 1 Input, Processing and Output (Programming Logic and Design)

This document discusses an introductory lab assignment on programming logic that involves writing algorithms, pseudocode, and flowcharts. The lab asks students to analyze problems and write code to solve a simple program that takes in student information and calculates credits remaining to graduate. Key steps include identifying variables, prompting for input, performing calculations, and displaying output.

Uploaded by

Jeanette Myers
Copyright
© © All Rights Reserved
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
1K views

Lab 1 Input, Processing and Output (Programming Logic and Design)

This document discusses an introductory lab assignment on programming logic that involves writing algorithms, pseudocode, and flowcharts. The lab asks students to analyze problems and write code to solve a simple program that takes in student information and calculates credits remaining to graduate. Key steps include identifying variables, prompting for input, performing calculations, and displaying output.

Uploaded by

Jeanette Myers
Copyright
© © All Rights Reserved
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 20

Starting Out with Programming Logic and Design 1

Lab 1: Input, Processing, and Output


This lab accompanies Chapter 2 of Starting Out with Programming Logic & Design.

Name: Jeanette Myers

Lab 1.1 – Algorithms

Critical Review

An algorithm is a set of well-designed logical steps that must take place in order to solve a
problem.

The flow the algorithm takes is sequential. For example, before you process calculations, all data
needed should be retrieved.

This lab requires you to think about the steps that take place in a program by writing
algorithms. Read the following program prior to completing the lab.

Write a program that will take in basic information from a


student, including student name, degree name, number of
credits taken so far, and the total number of credits
required in the degree program. The program will then
calculate how many credits are needed to graduate. Display
should include the student name, the degree name, and
credits left to graduate.

Step 1: Examine the following algorithm.

1. Get the student name.


2. Get the degree program name.
3. Subtract the number of credits taken so far from the
required credits for the degree.
4. Get the number of credits required for the degree program.
5. Get the number of credits the student has taken so far.
6. Display the input information in Step 1 and 2.
7. Display the calculated information.

Step 2: What logic error do you spot and how would you fix it?
There is a logic error in the order of operations. The algorithm should attain all
the data needed for the calculation before the calculation (step 3) is conducted. In
order to fix this, steps 4 and 5 should come before step 3.

Step 3: What steps require user interaction (Ex: user must type in some input)?
Steps 1, 2, 4, and 5 require the user to type in input.
Starting Out with Programming Logic and Design 2
Starting Out with Programming Logic and Design 3

Lab 1.2 – Pseudocode

Critical Review

Pseudocode is an informal language that has no syntax rules and is not meant to be compiled or
executed.

The flow the program takes is sequential. For example, before you ask for input, you should
display what information you want from the user.

// Comments are done by putting two forward slashes


// before the lines you want to document. Comments
// are used to explain code.

Variables are named storage locations.

Declare is the keyword used before naming a variable. Data types are: Real for decimal
numbers, Integer for whole numbers, and String for a series of characters.

Follow the rules for naming variables: (1) must be one word, no spaces, (2) usually no
punctuation characters, only letters and numbers, and (3) name cannot start with a number.

Display is the keyword used to print something to the screen. Any information needed to be
displayed to the user should be put inside quotation marks such as:

Display "This is how you print something to the screen"

When using display to print both a string and the value of a variable, a comma is used, such as:

Display "Here is the average: ", average.

Input is the keyword used to get the user to enter data. The data value entered by the user will
be placed in the variable that follows the keyword input such as Input variableName.

Set is the keyword used before a calculation. Standard math operators are used, such as + - *
/ MOD ^. Operators can be combined in one calculation, but it is wise to group expressions
together using parentheses. Remember the order of operations. Some examples are:

Set sale = price – discount


Set average = (test1 + test2 + test3) / 3
Starting Out with Programming Logic and Design 4

This lab requires you to think about the steps that take place in a program by writing
pseudocode. Read the following program prior to completing the lab.

Write a program that will take in basic information from a


student, including student name, degree name, number of
credits taken so far, and the total number of credits
required in the degree program. The program will then
calculate how many credits are needed to graduate. Display
should include the student name, the degree name, and
credits left to graduate.

Step 1: This program is most easily solved using just five variables. Identify potential
problems with the following variables declared in the pseudocode. Assume that the
college has the ability to offer half credits. (Reference: Variable Names, page 39-40).

Variable Name Problem If Yes, what's wrong?


(Yes or No)
Declare Real creditsTaken No
Declare Real credits Degree Yes It contains a space in between the
variable name. The variable
should only be one word.
Declare Int creditsLeft Yes It needs to include real numbers
(Declare Real creditsLeft).
Declare Real studentName Yes It needs to represent a series of
characters (Declare String
studentName)
Declare String degreeName No

Step 2: Complete the pseudocode by writing the two missing lines. (Reference:
Prompting the User, page 42).

Display "Enter student name."


Input studentName
Display "Enter degree program."
Input degreeName
Display “Enter the number of credits required in degree
program.”
Input creditsDegree
Display "Enter the number of credits taken so far."
Input creditsTaken

Step 3: What two things are wrong with the following calculation? (Reference: Variable
Assignment and Calculations, page 43).

creditsLeft = creditsTaken – creditsDegree


creditsDegree and creditsTaken should be switched (creditsDegree subtracted
from creditsTaken).
Starting Out with Programming Logic and Design 5

Set creditsLeft instead of creditsLeft

Step 4: Write the exact output you would expect from the following line of code if the
user of the program enters “Bill Jones”. (Reference: Displaying Multiple Items, page 40
– 41).

Display "The student's name is ", studentName


The student’s name is Bill Jones.

Step 5: Write the exact output you would expect from the following line of code if the
user of the program enters a degree that is 63 credits in total and they have taken 40
credits. (Reference: Displaying Multiple Items, page 40 – 41).

Display "This program requires ", creditsDegree, " credits


and they have taken ", creditsTaken, " so far."
This program requires 63 credits and they have taken 40 so far.

Step 6: Complete the following pseudocode to solve the programming problem.

1. //This program takes in student information and calculates


2. //how many credits the student has left before graduation.
3. //Information is then printed to the screen.

4. //Declare variables
5. Declare Real creditsTaken
6. Declare Real creditsDegree
7. Declare Real creditsLeft
8. Declare String studentsName
9. Declare String degreeName

10. //Ask for user input


11. Display "Enter student name.”
12. Input studentName
13. Display “Enter name of degree program.”
14. Input degreeName
15. Display “Enter credits needed for degree.”
16. Input creditsDegree
17. Display “Enter credits taken so far.”
18. Input creditsTaken

19. //Calculate remaining credits


20. Set creditsLeft = creditsDegree - creditsTaken

21. //Display student name, degree program, and credits left.


22. Display "The student's name is ", studentName
23. Display “The student is taking classes for “, degreeName
24. Display “The student needs “, creditsLeft, “ more credits
to earn their degree.”
Starting Out with Programming Logic and Design 6

Lab 1.3 – Flowcharts

Critical Review

A flowchart is a diagram that graphically depicts the steps that take place in a program.
Symbols are used to depict the various steps that need to happen within a program.
Flow lines are used between the symbols to indicate the flow of the program.

Ovals are used as terminal symbols, which indicate a start and stop to a program.

Parallelograms, the data symbol, are used for input and display statements.

Rectangles, the process symbol, are used for calculations and variable declarations.

On page connectors are used to link a flowchart that continues on the same page. The
connecting system starts with the letter A, whereas A would appear in the two
connectors that show the flow.

The statements inside the data and the process symbols can be written similarly to the
statements used in pseudocode.

This lab requires you to think about the steps that take place in a program by designing a
flowchart. While designing flowcharts can be done with paper and pencil, one mistake
often requires a lot of erasing. Therefore, a flowcharting application such as Raptor or
Visio should be used. This lab will give you a brief overview of Raptor. Read the
following program prior to completing the lab.
Starting Out with Programming Logic and Design 7

Write a program that will take in basic information from a


student, including student name, degree name, number of
credits taken so far, and the total number of credits
required in the degree program. The program will then
calculate how many credits are needed to graduate. Display
should include the student name, the degree name, and
credits left to graduate.

Step 1: Start Raptor; notice the Raptor screen. This window is your primary tool for
creating a flowchart. Prior to adding symbols, save your document by clicking on File
and then Save. Select your location and save the file as Lab 1-3. The .rap file extension
will be added automatically.

Step 2: Notice the MasterConsole screen. This window is used to show your program
output once your flowchart is completed. The Clear button will clear the console to view
a fresh run of your program.
Starting Out with Programming Logic and Design 8

Step 3: Return to the Raptor screen to begin adding symbols into your flowchart. Your
flowchart should follow the pseudocode in Lab 1-2, Step 6. While a rectangle is
normally used for declaring variables, there is no easy way to do this in Raptor. Since
this is an important part of flowcharting, we will do this using a comment box. To do
this, Right-Click on the Start symbol and select Comment. In the Enter Comment box,
type the variables your program will need. Below is a start to how it should look.

Step 4: The next step in your flowchart should be to ask for user input. Click the Input
Symbol on the Left and Drag and Drop to the flow line between Start and Stop. Double
Click on the Input Symbol to begin entering information. Enter Enter student name
in the top box. Enter studentName in the variable box. Below is how it should look.

Step 5: Continue the Step 4 directions for all your input statements, changing each Input
symbol to reflect the appropriate user interaction.

Step 6: The next step in your flowchart is to process any calculations that exist. Click
on the Assignment symbol and drag it to the flow line between the last input statement
and the end symbol. Double click on the Assignment symbol to enter your code. In the
Set box, put the name of your storage variable. In the To box, put the expression part of
your formula. Below is how it should look.

Step 7: The next step in your flowchart is to display the requested output to the screen.
Click the Output symbol and drag it to the flow line between the assignment statement
and the end symbol. Double click on the Output symbol to enter your code. Under
Output Type, select Output Expression since we want to display both a sentence and the
contents of a variable. In the box, type "Student name is " + studentName.
Below is how it should look once you click Done.
Starting Out with Programming Logic and Design 9

Step 8: Continue the Step 7 directions for all your output statements, changing each
Output symbol to reflect the appropriate requested output information.

Step 9: Once your flowchart is complete, click on Run and then Execute to Completion
on the Raptor menu. Follow the flow of your program to see if it processes properly.
Your Master Console window should show output similar to

Student name is Bill Jones


The degree program is Computer Programming
Credits left to graduation is 39
----Run finished----

Step 10: The final step is to insert your finished flowchart in the space below. Inside
Raptor, select File and the Print to Clipboard from the menu. Inside Word in the space
below, select Edit and Paste.

PASTE FLOWCHART HERE


Starting Out with Programming Logic and Design 10
Starting Out with Programming Logic and Design 11

Lab 1.4 – Python Code

Critical Review

Comments in Python are preceded by the # sign.

Input of strings into a variable is done using the input function. This function converts the input
to a series of characters so they can be used later in the program. This is written as a statement
such as:

stringVariable = input('Enter a word. ')

The input function always returns the user's input as a string, even if the user enters numeric data.
If you want your program to read a numeric value as input, you must use a conversion function
along with the input function. To convert input to an integer, you use the int() conversion
function, and to convert input to a real number, you use the float() conversion function. For
example, the following statement reads input from the user, converts that input to an integer, and
assigns the integer value to a variable named number:

number = int(input('Enter a number. '))

The following statement reads input from the user, converts that input to an real number (also
known as a floating-point number), and assigns the integer value to a variable named number:

number = float(input('Enter a number. '))

Equations are written similarly to the method used in pseudocode, but without the Set keyword.
For example:

total = apples + oranges

Complex formulas should use parentheses to group processes. In addition, if input values are
taken in as integers, but will be used to calculate a decimal value, they must be converted to real
values. For example:

average = (test1 + test2) / 2

To display information to the screen, the print function is used with the string, which is written
within single quotation marks. If the value of a variable needs to displayed after the string, a
comma separates the two. For example:

print('The average is', average)

This lab requires you to translate your work in the pseudocode and flowchart to actual
code using Python. Read the following program prior to completing the lab.

Write a program that will take in basic information from a


student, including student name, degree name, number of
Starting Out with Programming Logic and Design 12

credits taken so far, and the total number of credits


required in the degree program. The program will then
calculate how many credits are needed to graduate. Display
should include the student name, the degree name, and
credits left to graduate.

Step 1: Examine the following line of code. What do you expect as output to the screen?

studentName = input('Enter student name. ')

Student name

Step 2: Examine the following line of code. What type of value do you expect the user
of the program to enter?

creditsDegree = int(input('Enter credits required for degree.'))

A number value

Step 3: If the user of the program types Bill Jones to the question in Step 1, what do
you expect the output to the screen to be when the following line of code processes?

print('The student\'s name is', studentName)

The student’s name is Bill Jones

Step 4: Examine the following code. If the program requires 63 credits, and the student
has 20 left, what do you expect the output to the screen to be?

print('The program requires', creditsDegree,


'credits and they have taken', creditsTaken,
'credits so far.')

The program requires 63 credits and they have taken 43 so far.

Step 5: Start the IDLE Environment for Python. If the Edit window for entering code
does not come up, go to Options, Configure IDLE, click on the General tab, and under
Startup Preferences select Open Edit Window. Close and reopen the Environment. Prior
to entering code, save your file by clicking on File and then Save. Select your location
and save this file as Lab1-4.py. Be sure to include the .py extension.
Starting Out with Programming Logic and Design 13

Step 6: Code should start with documentation. Document the first few lines of your
program to include your name, the date, and a brief description of what the program does.
Each line that you want to comment out must begin with a # sign. For example:

# Sally Smith
# January 15
# This program ...

Step 7: After documentation, enter the following line of code into your program.

studentName = input('Enter student name. ')

Step 8: On the menu, select Run and then Run Module. Observe your program in
action. If you get a syntax error, you must fix it before you are able to run your program.
Click OK and review the highlighted syntax error to fix it.

Step 9: Repeat Step 7, but change the statement so that it asks the user to enter their
degree name. It is up to you whether you want to repeat Step 8 each time you code a line.
It is recommended for beginning programmers so they can immediately identify syntax
errors. Also, one syntax error at a time seems better than many all at once.

Step 10: Next, you should write the code that will ask the user how many credits are
required in the degree. This can be done using the input function since it is a numeric
value. Enter the following line of code into your program.

creditsDegree = int(input('Enter the number of credits required


for the degree. '))

Step 11: Repeat Step 10 but change the statement so that it asks the user to enter the
number of credits they have taken so far.

Step 12: Next, add your calculation. This is done very simply with the following code.

creditsLeft = creditsDegree – creditsTaken

Step 13: Add the following line of code to your program.

print('The student's name is', studentName)


Starting Out with Programming Logic and Design 14

Step 14: If you have not tested your program in a while, now is a good time to try it out.
Go to Run and Run Module and observe what happens. SYNTAX ERROR!

Step 15: While nothing stands out as being wrong in Step 14, notice that the word
student's is actually causing the problem. To the language, the apostrophe looks as if
it is the end of the statement. Since it is not, it must be quoted out by putting a \ in front
of it. Change the line to the following.

print('The student\'s name is', studentName)

Step 16: Finish your code by printing the remaining of the requested statements. Your
final output might look like the following.

Enter student name. Bill Jones


Enter degree name. Computer Programming
Enter the number of credits required for the degree. 63
Enter the number of credits taken so far. 24

The student's name is Bill Jones


The degree name is Computer Programming
There are 39.0 credits left until graduation.

Step 17: When your code is complete and runs properly, on the Menu, go to Edit and
then Select All, then Edit and Copy. Paste the code below.

PASTE CODE HERE


# Jeanie Myers
# September 8
# This program will calculate the total number of credits needed to graduate
studentName = input('Enter student name. ')
degreeName = input('Enter degree name. ')
creditsDegree = int(input('Enter the number of credits required for degree. '))
creditsTaken = int(input('Enter the number of credits taken so far. '))
creditsLeft = creditsDegree - creditsTaken
print('The student\'s name is', studentName)
print('The degree name is', degreeName)
print('There are ', creditsLeft, 'left until graduation.')
Starting Out with Programming Logic and Design 15

Executed:

Python 3.7.4 (tags/v3.7.4:e09359112e, Jul 8 2019, 20:34:20) [MSC v.1916 64 bit


(AMD64)] on win32
Type "help", "copyright", "credits" or "license()" for more information.
>>>
RESTART: C:/Users/Russ/AppData/Local/Programs/Python/Python37/Lab 1 python
code.py
Enter student name. Bill Jones
Enter degree name. Computer Programming
Enter the number of credits required for the degree. 63
Enter the number of credits taken so far. 24
The student's name is Bill Jones
The degree name is Computer Programming
There are 39 credits left until graduation.
Starting Out with Programming Logic and Design 16

Lab 1.5 – Programming Challenge 1 – Team Average

Write the Algorithm, Pseudocode, Flowchart, and Python code for the following
programming problem.

Team Average

A college wants you to write a program for them that will calculate the average
number of wins for their football team over the past five years. The user of the
program should be able to enter the number of wins each year. The program will
calculate the average number of wins during that five year period and display that
information to the screen.

The Algorithm

1. Take in wins for each of the five years


2. Calculate the average
3. Display the average to the screen

The Pseudocode
1. //This program takes in to account the number of wins
a college football team has
2. //and calculates the average number of wins over the
past five years.
3. //Information is then printed to the screen.

4. //Declare variables
5. Declare Int year1
6. Declare Int year2
7. Declare Int year3
8. Declare Int year4
9. Declare Int year5
10. Declare Real averageWins

11. //Ask for user input


12. Display “Enter wins for year 1.”
13. Input year1
14. Display “Enter wins for year 2.”
15. Input year2
15. Display “Enter wins for year 3.”
16. Input year3
17. Display “Enter wins for year 4.”
18. Input year4
19. Display “Enter wins for year 5.”
20. Input year5
Starting Out with Programming Logic and Design 17

21. //Calculate
22. Set averageWins = (year1 + year2 + year3 + year4 +
year5) / 5

23. //Display average wins


24. Display “The average over the past five years is “,
averageWins

The Flowchart

The Python Code

# Jeanie Myers
# September 8
# This program calculates the average number of wins over the past five years

year1 = int(input('Enter wins for year 1. '))


year2 = int(input('Enter wins for year 2. '))
year3 = int(input('Enter wins for year 3. '))
year4 = int(input('Enter wins for year 4. '))
year5 = int(input('Enter wins for year 5. '))
averageWins = (year1 + year2 + year3 + year4 + year5) / 5
print('The average wins over the past five years is', averageWins)
Starting Out with Programming Logic and Design 18

Executed:
Python 3.7.4 (tags/v3.7.4:e09359112e, Jul 8 2019, 20:34:20) [MSC v.1916 64 bit
(AMD64)] on win32
Type "help", "copyright", "credits" or "license()" for more information.
>>>
RESTART: C:/Users/Russ/AppData/Local/Programs/Python/Python37/Lab 1 python
code 2.py
Enter wins for year 1. 7
Enter wins for year 2. 8
Enter wins for year 3. 6
Enter wins for year 4. 7
Enter wins for year 5. 9
The average wins over the past five years is 7.4
>>>
Starting Out with Programming Logic and Design 19

Lab 1.6 – Programming Challenge 2 – Pedometer Calculator

Write the Algorithm, Pseudocode, Flowchart, and Python code for the following
programming problem.

Pedometer Calculator

A dietician wants you to write a program that will calculate the number of calories
a person can lose by walking at a slow pace for a mile; however, the user will
have only the distance given by a pedometer, which is measured in steps and not
miles. Assume each mile a person walks is equivalent to 2000 steps, and that for
every mile walked, a person loses 65 calories. Allow the user of the program to
enter the number of steps taken throughout the day. The program will calculate
the distance in miles and the number of calories lost. The user of the program
should also be able to enter the day of the week the data is being calculated for.
The day of the week, the distance in miles, and the calories lost should then be
displayed to the screen.

The Algorithm

1. Take in steps and day of week


2. Calculate calories lost
3. Display calories lost on the day and the distance in
miles on to the screen

The Pseudocode
1. //This program calculates the number of calories a
2. //person can lose by walking at a slow pace for a mile
3. //or 2,000 steps on a specified day of the week.
4. //Information is then printed onto the screen

5.//Declare Variables
6. Declare String dayWalked
7. Declare Real walkedSteps
8. Declare Real milesWalked
9. Declare Real caloriesLost

10.//Ask for user input


11. Display “What day of the week is it?”
12. Input dayWalked
13. Display “How many steps did you take measured with
pedometer?”
14. Input walkedSteps

15.//Calculate
16. Set Real milesWalked = walkedSteps / 2000
Starting Out with Programming Logic and Design 20

17. Set Real caloriesLost = milesWalked * 65

18.//Output
19. Display “Today is “, dayWalked, “you walked “,
walkedSteps, “miles, and you lost “, caloriesLost,
“calories.”

The Flowchart

The Python Code

# Jeanie Myers
# September 8
# This program calculates the number of calories a person can lose by walking.
dayWalked = input('Enter day walked. ')
walkedSteps = float(input('Enter Real walked steps. ')
milesWalked = walkedSteps / 2000
caloriesLost = milesWalked * 65
print('Today is ', dayWalked, 'you walked ', walkedSteps, 'miles, and you lost ',
caloriesLost, 'calories.'

You might also like