Activity: Practice with functions

Download demo_functions.py and open it in Thonny. Save it to your cs100/ch1 folder. Run the program by clicking the green ‘play’ button. You should see the following as a result in the shell area:

Hello students
3566.5

Remember that if you want to use comments to silence out parts of Python instructions, use #. For example,

#print("This is commented out by the # symbol")
print("This is not commented out")
print("This also is not commented out") # but this part is a comment

Part 1: Ways you invoke/call a function that has a return and a function that does not have return.

Experiment calling hello() function in several ways.

  1. Write in comments, what is the output as a result of the function call:
    hello()
    
  2. Write in comments, what is the output as a result of the function call:
    print(hello())
    
  3. Write in comments - what do you think happened? What is different? Where is None coming from? Why would we ONLY want to use the call hello(), and not print(hello())?

Now, experiment calling avg() function in several ways.

  1. Write in comments, what is output to the shell as a result of:
     avg(4,8)
    
  2. Write in comments, what is output as a result of:
    print( avg(4,8) )
    
  3. Write in comments, what is output as a result of:
    rez = avg(4, 8)
    print(rez)
    
  4. Write in comments - what do you think happened? What is different? Why would we NOT want to use the call avg(4,8)?

Part 2

  1. Add code to compute the average of 50 and 75 and print the result.

  2. Copy the function definition for long_hello shown below. Test the function to see that it works, i.e., call/invoke long_hello() after it is defined.
    def long_hello():
       print("Hello students")
       print("Oh hi")
       print("How are you?")
       print("I'm good thanks.")
    
  3. Define a function prod(num1, num2) that takes two numbers as input and returns their product. Call/invoke your function to test it.

Part 3: Optional - if you have time

  1. Write a function weirdSum that takes four numbers as input and returns the sum of the first two multiplied by the sum of the last two.
  2. Write a function secondsToday with no parameters that prints out the number of seconds in a day (note: there are 24 hours in a day; 60 minutes in an hour; and 60 seconds in a minute). When called, your function should produce the following output:
    IN A DAY THERE ARE: 86400 seconds.
    

How to submit

Make sure you saved your work and that it runs without errors. Submit your demo-functions.py file on Moodle.