CS21: Quiz 2 Study Guide
In addition to all concepts from Quiz 1...
You should be able to define the following terms:
- data types: integer, float, string, Boolean
- branching and looping
- the accumulator design pattern
- string indexing
You should understand and be able to use the following python concepts:
- basic
for
loops
range()
- basic arithmetic expressions using
+
, -
, *
, /
, //
, **
, %
- conversion between the
int
, float
, and str
types
- the empty string
""
- string concatenation with
+
, string repetition with *
- string indexing with
[]
- for loops over strings
len()
- tracing a program (show the output)
- if, if/else, if/elif/else
- the relational Boolean operators
<
, <=
, ==
, >
, >=
, !=
- the logical Boolean operators
and
, or
, and not
- nested statements (e.g., nested if statements, if/else in a loop, etc.)
- print formatting
- accumulator pattern using string, float, or int variables
Practice problems:
- Show the output from the following code fragments:
for x in range(6):
print(x, x**2)
print("done!")
text = "hello!"
for i in range(len(text)):
print("-" + text[i] + "-")
- Given these assignments:
x = 5
y = 13
S = "we love computer science"
isDone = False
Show the value and type of each expression below:
x < 10 and y < 10
x < 10 or y < 10
x < 10 and x > 0
x > 10 or x < 0
(5/x) > 7.0
len(S) >= 10
S[0] < S[1]
not isDone
- Consider the following program
x = 3
print("%d %d" % (0,x))
for i in range(5):
if x % 2 == 0:
x = x / 2
else:
x = (3*x+1)/2
print("%d %d" % (i,x))
- Trace the program and show its output.
- Create a table having columns for
i
, and x
and show how the values change as the loop executes.
- Write a program that asks the user how many grades they want to average, prompts the user for those grades, and prints the average.
Enter number of grades to average: 5
Enter grade: 96
Enter grade: 86
Enter grade: 76
Enter grade: 66
Enter grade: 56
Average is: 76.0
- Write a program that asks the user for a word, and then uses an accumulator to print out the word with all lowercase "e"s changed to uppercase "E"s.
Enter a word: repetitive
rEpEtitivE