Contents

  1. break.py
  2. consecutiveHeads2.py
  3. consecutiveHeads.py
  4. eval_cond.py
  5. game.py
  6. loop.py
  7. therapist.py
  8. unconditional.py
  9. while.py
  10. whilevsfor.py

break.py 1/10

[
top][prev][next]
# Compares two versions of the same program, one uses break, one doesn't.
# Sara Sprenkle

# ---------- while LOOP ----------


# condition says when loop will continue
x=eval(input("Enter number: "))
while x % 2 != 0 :
	print("Error!")
	x = eval(input("Try again: "))
print(x, "is an even number. ") 


# ---------- while LOOP USING break ----------

print("--"*10)
print("Again, but using break")

# have to look inside loop to know when it stops
while True :
	x = eval(input("Enter number: "))
	if x % 2 == 0 :
		break
	print("Error!")
print(x, "is an even number.")



consecutiveHeads2.py 2/10

[
top][prev][next]
# Count how many times it takes to get 3 consecutive heads.
# This version uses a break statement
# By CSCI111

from random import randint
from game import *

NUM_CONSECUTIVE = 3

print("This program finds how many coin flips are required before")
print("we get", NUM_CONSECUTIVE, "consecutive heads")


consecutiveHeads.py 3/10

[
top][prev][next]
# Count how many times it takes to get 3 consecutive heads
# By CSCI111

from random import randint
from game import *

NUM_CONSECUTIVE = 3

print("This program finds how many coin flips are required before")
print("we get", NUM_CONSECUTIVE, "consecutive heads")


eval_cond.py 4/10

[
top][prev][next]
# Examples of advanced conditionals
# by Sara Sprenkle

x = 2
y = 3
z = 4

b = x==2
c = not b

# Note: because of precedence, we don't _need_ parentheses
# I added parentheses for readability/emphasis
d = (y<4) and (z<3)
print("d =", d)

d = (y<4) or (z<3)
print("d =", d)

d = not d
print(b, c, d)


game.py 5/10

[
top][prev][next]
# Helpful functions for games 
# by CSCI111

from random import *

HEADS=0
TAILS=1

def flipCoin():
    """
    Simulates flipping a non-biased coin.
    returns either HEADS or TAILS.
    """
    return randint(0, 1)
    
def testFlipCoin():
    """ tests the flipCoin function """
    numTests = 20
    numSuccesses = 0
    
    for x in range(numTests):
        flipped = flipCoin()
        
        if flipped == HEADS or flipped == TAILS:
            numSuccesses += 1
            
    print( numSuccesses, "out of", numTests, "tests passed.")
    
if __name__ == '__main__':
    testFlipCoin()

loop.py 6/10

[
top][prev][next]
# What does this loop do?
# Sara Sprenkle

count = 1
while count > 0:
	print(count)
	count += 1

therapist.py 7/10

[
top][prev][next]
# The Very Simple Therapist
# CSCI 111

print("-"*60)
print("Welcome to computerized therapy!")
print("You will get your money's worth.")
print("Our session is over when you have nothing more to tell me.")
print("-"*60)

user_input = input("Tell me what's wrong.\n")

while user_input != "":
    user_input = input("How does that make you feel?\n")

print("Thank you!  Come again!")

unconditional.py 8/10

[
top][prev][next]
# A very special Valentine's Day program
# CSCI 111

print("-"*60)
print("Happy Valentine's Day!")
print("Press enter when you feel unconditional love.")
print("-"*60)

user_input = input("How was your day, valentine?\n")

while user_input != "":
    print("Remember: I will always love you.\n")
    user_input = input("Tell me more, valentine.\n")

print("I hope you feel loved.")

while.py 9/10

[
top][prev][next]
# Demonstrates a simple while loop.
# Trace through program and show what would be output.
# Sara Sprenkle

i = 0
while i < 10 :
    print("i equals", i)
    i+=1
print("Done", i)


whilevsfor.py 10/10

[
top][prev][next]
# Code to compare a while loop with a for loop
# by Sara Sprenkle

# ---------- WHILE LOOP ----------

print("While Loop Demo")
i=0
while i < 10:
    print("i equals", i)
    i += 1
print("Done", i)

# ---------- FOR LOOP ----------

print("\nFor Loop Demo")
for i in range(10):
    print("i equals", i)

print("Done", i)

# To give exactly the same output as the while loop, would need to print out i+1


Generated by GNU Enscript 1.6.6.