programming for everybody week 5 quiz answers

Chapter 3

1. What do we do to a Python statement that is immediately after an if statement to indicate that the statement is to be executed only when the if statement is true?

  • Indent the line below the if statement
  • Start the statement with a “#” character
  • Begin the statement with a curly brace {
  • Underline all of the conditional code

2. Which of these operators is not a comparison / logical operator?

  • >=
  • !=
  • >
  • =
  • ==

3. What is true about the following code segment:

if x == 5 :
print(‘Is 5’)
print(‘Is Still 5’)
print(‘Third 5’)
  • Depending on the value of x, either all three of the print statements will execute or none of the statements will execute
  • The string ‘Is 5’ will always print out regardless of the value for x.
  • The string ‘Is 5’ will never print out regardless of the value for x.
  • Only two of the three print statements will print out if the value of x is less than zero.

4. When you have multiple lines in an if block, how do you indicate the end of the

  • You capitalize the first letter of the line following the end of the if block
  • You omit the semicolon ; on the last line of the if block
  • You use a curly brace { after the last line of the if block
  • You de-indent the next line past the if block to the same level of indent as the original if statement

5. You look at the following text:

if x == 6 :
print(‘Is 6’)
print(‘Is Still 6’)
print(‘Third 6’)

It looks perfect but Python is giving you an 'Indentation Error' on the second print statement. What is the most likely reason?

  • In order to make humans feel inadequate, Python randomly emits ‘Indentation Errors’ on perfectly good code – after about an hour the error will just go away without any changes to your program
  • You have mixed tabs and spaces in the file
  • Python has reached its limit on the largest Python program that can be run
  • Python thinks ‘Still’ is a mis-spelled word in the string

6. What is the Python reserved word that we use in two-way if tests to indicate the block of code that is to be executed if the logical test is false?

  • except
  • else
  • iterate
  • break

7. What will the following code print out?

x = 0
if x < 2 :
print(‘Small’)
elif x < 10 :
print(‘Medium’)
else :
print(‘LARGE’)
print(‘All done’)
  • All done
  • Small

    All done

  • LARGE

    All done

  • Small

    Medium

    LARGE

    All done

8. For the following code,

if x < 2 :
print(‘Below 2’)
elif x >= 2 :
print(‘Two or more’)
else :
print(‘Something else’)

What value of 'x' will cause 'Something else' to print out?

  • x = 2.0
  • This code will never print ‘Something else’ regardless of the value for ‘x’
  • x = 2
  • x = -2

9. In the following code (numbers added) - which will be the last line to execute successfully?

(1) astr = ‘Hello Bob’
(2) istr = int(astr)
(3) print(‘First’, istr)
(4) astr = ‘123’
(5) istr = int(astr)
(6) print(‘Second’, istr)
  • 6
  • 1
  • 5
  • 2

10. For the following code:

astr = ‘Hello Bob’
istr = 0
try:
istr = int(astr)
except:
istr = -1

What will the value be for istr after this code executes

  • It will be the ‘Not a number’ value (i.e. NaN)
  • -1
  • It will be a random number depending on the operating system the program runs on
  • false

Assignment 3.1

3.1 Write a program to prompt the user for hours and rate per hour using input to compute gross pay. Pay the hourly rate for the hours up to 40 and 1.5 times the hourly rate for all hours worked above 40 hours. 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 - assume the user types numbers properly.

hours_str = input(“Enter the number of hours worked: “)
rate_str = input(“Enter the hourly rate: “)

hours = float(hours_str)
rate = float(rate_str)

if hours <= 40:
gross_pay = hours * rate
else:
regular_pay = 40 * rate
overtime_hours = hours – 40
overtime_pay = overtime_hours * (rate * 1.5)
gross_pay = regular_pay + overtime_pay

print(gross_pay)

Assignment 3.3

3.3 Write a program to prompt for a score between 0.0 and 1.0. If the score is out of range, print an error. If the score is between 0.0 and 1.0, print a grade using the following table: Score Grade >= 0.9 A >= 0.8 B >= 0.7 C >= 0.6 D < 0.6 F If the user enters a value out of range, print a suitable error message and exit. For the test, enter a score of 0.85.

score_str = input(“Enter a score between 0.0 and 1.0: “)

try:
score = float(score_str)
except:
print(“Error: Please enter a numeric score between 0.0 and 1.0.”)
quit()

if score < 0.0 or score > 1.0:
print(“Error: Score is out of range. Please enter a score between 0.0 and 1.0.”)
else:
if score >= 0.9:
grade = ‘A’
elif score >= 0.8:
grade = ‘B’
elif score >= 0.7:
grade = ‘C’
elif score >= 0.6:
grade = ‘D’
else:
grade = ‘F’

print(grade)

Leave a Reply