More on Functions Part 2 Intro to Computer


















- Slides: 18

More on Functions (Part 2) Intro to Computer Science CS 1510, Section 2 Dr. Sarah Diesburg

What are functions? Little pieces of code that we can write and invoke by name Reusable General 2

Functions Take in any number of parameters Including no parameters! Possibly compute something Return a value Can be None If no return is specified, returns None 3

Function that takes in no parameters def answer. To. Everything(): return 42 This function takes in no parameters It does no computation Just returns a number 4

Function that returns nothing Let’s take a look at print() >>> result = print(“hi”) >>> print(result) None >>> 5

None is a special value in Python that represents nothing The first letter of None must be capitalized – it will turn orange Use it when you have nothing to return Like if one of the parameters was invalid 6

Functions Remember, a function stops running when it hits a return statement Often times it is easier to write something as a function than as a script by itself Let’s look at our old script to find a prime number 7

prime. py number = int(input("Please enter a number greater than 2. ")) is. Prime = True #break out condition divisor = 2 while divisor<number and is. Prime: if number%divisor==0: print("The number", number, "is divisible by", divisor) is. Prime=False # Going to break out divisor=divisor+1 8

prime. py (continued) if is. Prime: print("That number is prime") else: print("That number is NOT prime") 9

prime. As. Function. py def is. Prime(number): for divisor in range(2, number): if number%divisor==0: return False return True Much smaller! 10

Future Programming Assignments I will ask you to write python files with only functions in them That’s ok – you can call functions directly from IDLE Step 1: Run your python file (F 5) At interpreter, type your function name with parameters 11

Example Take function. Fun. py and deleted all the code starting at # Running the main part of the program Save Run the file Type >>> my. Sum = add. Num. To. Self(4) >>>print(my. Sum) 12

Revisiting Design Documents Now that our future programming assignments will involve functions, I will expect more from your design documents and comments in your code 13

Code Comments Still do what you are already doing Before each function, list Function name Inputs – inputs parameters to your function and their types Output – what your function returns and its type Description – what your function does 14

Example Program Let’s say that we are writing a computer rock/paper/scissors game with 4 functions Function get. Weapon(): no inputs, gets random weapon from “r”, “p”, “s”, returns “r”, ”p”, ”s” Function is. Tie(one, two): inputs weapons from both players, returns true if tie and false otherwise Function player. One. Wins(one, two): inputs weapons from both players, returns true if player one wins and false otherwise 15

Example Program Let’s say that we are writing a computer rock/paper/scissors game with 4 functions Function rps(number. Of. Games): input is the number of games (int), plays rock paper scissors with two computer players, and returns the result of the number of player 1 wins, player 2 wins, and ties in a string 16

Remember… Write your worksheet and function comments first Then fill in the code 17

Example Take a look at RPS. py to see what I am expecting. 18