In addition to the concepts below, you should also know the
concepts from Quiz 1,
Quiz 2, and Quiz 3.
You should be able to define the following terms:
- formal parameters
- arguments
- function definition
- function call
- call stack
- top-down design
- bottom-up implementation
- stubbed-out function
Practice problems:
- Write a function called getLetter() that asks the user
for a letter and returns the given letter. Your function should check
to make sure the user enters just a single letter. If the user enters
anything other than a single letter, the function should ask again,
until it receives valid input.
- Write a function called avgList that takes a list of
numbers as input and returns their average. For example,
avgList([5, 10, 5, 4]) should return 6. Write a
main program to test the function.
- Write a function called maxList that takes a list of
numbers as input and returns the largest number in the list. For
example, maxList([7,4,8,1]) should return 8. Write
a main program to test the function.
- Consider the following program.
def main():
print "in main"
test = "whee"
check = "e"
answer = helper(test, check)
print "the answer is", answer
def helper(word, letter):
print "in helper"
print "word:", word
print "letter:", letter
x = 0
for ch in word:
if ch == letter:
x = x+1
# draw stack here
return x
main()
- Draw the call stack as it would look just prior to returning from
helper.
- What is the program's output (i.e. what is printed when the program is run)?
- What does the helper function compute?
- What would helper("moobaalalala", "a") return?
- What would helper("zoo", "a") return?
- Write a program that reads in the lines from a file
called infile.txt and creates an acronym from the first
letter of each line. For example, if the input file is:
Thank
Goodness
It's
Friday
Your program will create and print out the string "TGIF"
include("../style/footer.php"); ?>