programming for everybody week 6 quiz answers
Chapter 4
1. Which Python keyword indicates the start of a function definition?
- def
- continue
- help
- sweet
2. In Python, how do you indicate the end of the block of code that makes up the function?
- You de-indent a line of code to the same indent level as the def keyword
- You add a line that has at least 10 dashes
- You put the “END” keyword in column 7 of the line which is to be the last line of the function
- You put the colon character (:) in the first column of a line
3. In Python what is the input() feature best described as?
- A conditional statement
- A user-defined function
- The central processing unit
- A built-in function
4. What does the following code print out?
def thing():
print(‘Hello’)
print(‘There’)
thing
Hello
There
- There
Hello
There
- Hello
5. In the following Python code, which of the following is an "argument" to a function?
x = ‘banana’
y = max(x)
print(y)
- ‘banana’
- max
- x
6. What will the following Python code print out?
def func(x) :
print(x)
func(10)
func(20)
x
20
func
func
10
20
- x
10
x
20
7. Which line of the following Python program will never execute?
def stuff():
print(‘Hello’)
return
print(‘World’)
stuff()
- return
- stuff()
- def stuff():
- print(‘Hello’)
- print (‘World’)
8. What will the following Python program print out?
def greet(lang):
if lang == ‘es’:
return’Hola’
elif lang == ‘fr’:
return’Bonjour’
else:
return’Hello’
print(greet(‘fr’),’Michael’)
- Bonjour Michael
- Hola Michael
- Hello Michael
def
Hola
Bonjour
Hello
Michael
9. What does the following Python code print out? (Note that this is a bit of a trick question and the code has what many would consider to be a flaw/bug - so read carefully).
def addtwo(a, b):
added = a + b
return a
x = addtwo(2, 7)
print(x)
- 7
- Traceback
- 2
- 14
10. What is the most important benefit of writing your own functions?
- Following the rule that whenever a program is more than 10 lines you must use a function
- Avoiding writing the same non-trivial code more than once in your program
- To avoid having more than 10 lines of sequential code without an indent or de-indent
- Following the rule that no function can have more than 10 statements in it
Assignment 4.6
4.6 Write a program to prompt the user for hours and rate per hour using input to compute gross pay. Pay should be the normal rate for hours up to 40 and time-and-a-half for the hourly rate for all hours worked above 40 hours. Put the logic to do the computation of pay in a function called computepay() and use the function to do the computation. The function should return a value. Use 45 hours and a rate of 10.50 per hour to test the program (the pay should be 498.75). You should use input to read a string and float() to convert the string to a number. Do not worry about error checking the user input unless you want to - you can assume the user types numbers properly. Do not name your variable sum or use the sum() function.
def computepay(h, r):
if h <= 40:
return h * r
else:
regular_pay = 40 * r
overtime_pay = (h – 40) * (r * 1.5)
return regular_pay + overtime_pay
hrs = input(“Enter Hours: “)
rate = input(“Enter Rate per Hour: “)
hours = float(hrs)
hourly_rate = float(rate)
pay = computepay(hours, hourly_rate)
print(“Pay”, pay)