CSC111 Homework 1 2015

From dftwiki3
Revision as of 16:13, 25 January 2015 by Thiebaut (talk | contribs)
Jump to: navigation, search

--D. Thiebaut (talk) 14:45, 25 January 2015 (EST)



In this assignment is due on 2/3/15 at 11:55 p.m.

Each problem requires you to edit a program that is partly written, and available on Moodle, so that the output of your edited program matches exactly the output specified in the problem. You will find this assignment in the CSC111 section of your Moodle account.

There may be many different ways to edit a program to make it output the one specified in the problem. In general, if you have a choice between several possible modifications, pick the one that is the simplest. Do not try to rewrite the program, but keep its structure. It is acceptable to add new statements in some problems. You must evaluate each program on Moodle to receive a grade for it. Make sure you evaluate your programs before the deadline, otherwise you will not receive a grade. Remember that no extensions are given in this class!



Problem #1


Edit the program of the HW1 P1 section on Moodle, so that its output becomes:

Incomplete program Output
# Homework 1, Problem 1

age = 1
name = "Alex"
year = 2015

print( "--", year )
print( name, "is", "and was born in" )
-- 2015 --
Alex is 20 years old, and was born in 1995
Alex will be 25 in 2020.


Make sure you evaluate the program and receive a grade for it, otherwise your work will not be counted toward the homework grade!

Problem #2


Edit the program of the HW1 P2 section on Moodle, so that its output becomes:

Incomplete program Output
# Homework 1, Problem 2

college = "Smith College"
bar = "-" * len( college )
name = "Fiona"
print( bar )
print( college )
-------------
Smith College
Fiona
-------------


Make sure you evaluate the program and receive a grade for it, otherwise your work will not be counted toward the homework grade!

Problem #3


Be sure to read Chapter 1, Section 6 in Zelle before editing the program of the HW1 P3 section on Moodle, so that its output becomes:

Incomplete program Output
# Homework 1, Problem 3 (read Section 1.6 in Zelle)

def greet( person ):
    print( person )
    print( "How are you?" )

greet( "John" )
greet( "Emily" )
greet( "Lujun" )
Hello John
How are you?
Hello Emily
How are you?
Hello Lujun
How are you?


Make sure you evaluate the program and receive a grade for it, otherwise your work will not be counted toward the homework grade!

Problem #4


Edit the program of the HW1 P4 section on Moodle, so that its output becomes the one shown below:

Incomplete program Output
# Homework 1, Problem 4 (read Section 1.6 in Zelle)

def greetBar( person ):
    bar = "---------------------"
    print( bar )
    print( person )

greetBar( "Lujun" )
greetBar( "Emily" )
greetBar( "John" )
---------------------
Hello John
How are you?
---------------------
Hello Emily
How are you?
---------------------
Hello Lujun
How are you?



Problem #5


Copy the incomplete program below into IDLE, and edit it until its output is exactly the same as the one shown in the right column of the table below. Be careful, as the Moodle testing program counts extra spaces or extra blank lines in your output as incorrect!

Make sure you click on evaluate in Moodle to make sure your program receives a grade.

Incomplete program Output
# Homework 1, Problem 5

def greetLength( person ):
    bar = "---------------------"
    print( bar )
    noChars = len( person )
    print( "==>", person )
    print( "Your name contains", noChars)

greetLength( "John" )
greetLength( "Emily" )
---------------------
==> John <==
Your name contains 4 characters
---------------------
==> Emily <==
Your name contains 5 characters
---------------------
==> Jo <==
Your name contains 2 characters


Problem 6


Copy the incomplete program below into IDLE, and edit it until its output is exactly the same as the one shown in the right column of the table below. Be careful, as the Moodle testing program counts extra spaces or extra blank lines in your output as incorrect!

Make sure you click on evaluate in Moodle to make sure your program receives a grade.


Incomplete program Output
# Homework 1, Problem 
# Homework 1, Problem 6

def greetLength( person ):
    bar = "---------------------"
    print( bar )
    print( "Hello", person )

greetLength( "John" )
greetLength( "Emily" )
greetLength( "Jo" )
---------------------
Hello John how are you?
---------------------
Hello Emily how are you?
---------------------
Hello Jo how are you?



Problem 7


Copy the incomplete program below into IDLE, and edit it until its output is exactly the same as the one shown in the right column of the table below. Be careful, as the Moodle testing program counts extra spaces or extra blank lines in your output as incorrect!

Make sure you click on evaluate in Moodle to make sure your program receives a grade.


Incomplete program Output
# Homework 1, Problem 7

person1 = "Maria Callas"
person2 = "Sir Elton John"
person3 = "Lady Gaga"

def greetLength( person ):
    bar = "---------------------"
    print( bar )
    noChars = len( person )
    print( person, "<==" )
    print(  noChars, "characters" )

greetLength( person2 )
greetLength( person2 )
greetLength( person2 )
---------------------
==> Maria Callas <==
Your name contains 12 characters
---------------------
==> Sir Elton John <==
Your name contains 14 characters
---------------------
==> Lady Gaga <==
Your name contains 9 characters



Problem 8


Copy the incomplete program below into IDLE, and edit it until its output is exactly the same as the one shown in the right column of the table below. Be careful, as the Moodle testing program counts extra spaces or extra blank lines in your output as incorrect! Note that in this problem, there is a blank line printed after each non-blank output.

Make sure you click on evaluate in Moodle to make sure your program receives a grade.


Incomplete program Output
# Homework 1, Problem 8

def greet2( person ):
    print( person )
    print()

for person in [ "Emily", "Jo" ]:
    greet2( person )
Lujun is a Smith College student

Emily is a Smith College student

Jo is a Smith College student



Problem 9


Copy the incomplete program below into IDLE, and edit it until its output is exactly the same as the one shown in the right column of the table below. Be careful, as the Moodle testing program counts extra spaces or extra blank lines in your output as incorrect!

Make sure you click on evaluate in Moodle to make sure your program receives a grade.


Incomplete program Output
# Homework 1, Problem 9

for degreesF in [ -10, 10, 20, 30, 32, 40, 50 ]:
    degreesC = (degreesF - 32) * 5 / 9
    print( degreesF, "is", round( degreesC ) )
-10 Fahrenheit is -23 Celsius
0 Fahrenheit is -18 Celsius
10 Fahrenheit is -12 Celsius
20 Fahrenheit is -7 Celsius
30 Fahrenheit is -1 Celsius
32 Fahrenheit is 0 Celsius
40 Fahrenheit is 4 Celsius
50 Fahrenheit is 10 Celsius
60 Fahrenheit is 16 Celsius



Problem 10


Copy the incomplete program below into IDLE, and edit it until its output is exactly the same as the one shown in the right column of the table below. Be careful, as the Moodle testing program counts extra spaces or extra blank lines in your output as incorrect!

Make sure you click on evaluate in Moodle to make sure your program receives a grade.


Incomplete program Output
# Homework 1, Problem 10

def printBar( length ):
    print( "-+" * length )

for length in [10,9,8,7,6,5,4,3,2,1]:
    printBar( length )
+-
+-+-
+-+-+-
+-+-+-+-
+-+-+-+-+-
+-+-+-+-+-+-
+-+-+-+-+-+-+-
+-+-+-+-+-+-+-+-
+-+-+-+-+-+-+-+-+-
+-+-+-+-+-+-+-+-+-+-


<showafterdate after="20150204 00:00" before="20150601 00:00">

Solution Programs


# edit the statements below (some of them are incomplete) so that the output
# is the one stated in Homework #1, Problem #1

print("\n\n==================== 1 ========================\n\n" )

age = 20
name = "Alex"
year = 2015

print( "--", year, "--" )
print( name, "is", age, "years old, and was born in", year - age )
print( name, "will be", 2020 - year + age, "in 2020." )


print("\n\n==================== 2 ========================\n\n" )

# Homework 1, Problem 2

college = "Smith College"
bar = "-" * len( college )
name = "Fiona"
print( bar )
print( college )
print( name )
print( bar )

print("\n\n==================== 3 ========================\n\n" )

# Homework 1, Problem 3 (read Section 1.6 in Zelle)

def greet( person ):
    print( "Hello", person )
    print( "How are you?" )

greet( "John" )
greet( "Emily" )
greet( "Lujun" )

print("\n\n==================== 4 ========================\n\n" )

# Homework 1, Problem 4 (read Section 1.6 in Zelle)

def greetBar( person ):
    bar = "---------------------"
    print( bar )
    print( "Hello", person )
    print( "How are you?" )

greetBar( "John" )
greetBar( "Emily" )
greetBar( "Lujun" )

print("\n\n==================== 5 ========================\n\n" )

# Homework 1, Problem 5

def greetLength( person ):
    bar = "---------------------"
    print( bar )
    noChars = len( person )
    print( "==>", person, "<==" )
    print( "Your name contains", noChars, "characters" )

greetLength( "John" )
greetLength( "Emily" )
greetLength( "Jo" )

print("\n\n==================== 6 ========================\n\n" )

# Homework 1, Problem 6

def greetLength( person ):
    bar = "---------------------"
    print( bar )
    noChars = len( person )
    print( "Hello", person, "how are you?" )

greetLength( "John" )
greetLength( "Emily" )
greetLength( "Jo" )

print("\n\n==================== 7 ========================\n\n" )

# Homework 1, Problem 7

person1 = "Maria Callas"
person2 = "Sir Elton John"
person3 = "Lady Gaga"

def greetLength( person ):
    bar = "---------------------"
    print( bar )
    noChars = len( person )
    print( "==>", person, "<==" )
    print( "Your name contains", noChars, "characters" )

greetLength( person1 )
greetLength( person2 )
greetLength( person3 )

print("\n\n==================== 8 ========================\n\n" )

# Homework 1, Problem 8

def greet2( person ):
    print( person, "is a Smith College student" )
    print()

for person in [ "Lujun", "Emily", "Jo" ]:
    greet2( person )


print("\n\n==================== 9 ========================\n\n" )

# Homework 1, Problem 9

for degreesF in [ -10, 0, 10, 20, 30, 32, 40, 50, 60 ]:
    degreesC = (degreesF - 32) * 5 / 9
    print( degreesF, "Fahrenheit is", round( degreesC ), "Celsius" )

print("\n\n==================== 10 ========================\n\n" )

# Homework 1, Problem 10

def printBar( length ):
    print( "+-" * length )

for length in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]:
    printBar( length )

</showafterdate>