# CS 100 & CS 102

CS 102, lab 3, part 1.  We'll make a small change or two.  Read in 10 integer values, and print out whether these 10 values are in ascending order (e.g. -3, 0, 12, 13, 29, 33, 50, 101, 120, 205), descending order (e.g. the reverse of what I just showed) or neither.  To do this, we need 3 variables:  lastval, the last value read in, newval, the next value read in, and order.  Order will be -1 if the values so far are in descending order, 1 for ascending, and 0 for neither.   No two numbers will be the same.

lastval = input("enter first value:")
newval = input("enter 2nd value:")
if lastval < newval:
order = 1     #i.e. ascending order for the first two values
else:
order = -1   #i.e. descending order for the first two values

for i in range(9):    #i.e. go through the loop 8 times
lastval = newval       #we know the tentative order, grab the next value
newval = input("enter new value:")
#now for the heavy lifting!  is the order still correct?
if order == 1  and newval < lastval:
#i.e. we had ascending order previously, but the newest value is less
#than the previous one--so out-of-order
order = 0      #our numbers will not be in order

if order == -1 and newval > lastval:
order = 0    #same idea

if order == 1:
print "ascending order"
elif order == -1:
print "descending order"
else:
print "no order"

-----------------------------------------------------------
MONOPOLY of sorts.
We'll invent a simple version.  You start at GO, each of the 4 sides of the board has 10 squares.  How many turns will it take to reach or pass GO again?  No buying, selling, etc.  Roll 2 dice, doubles lets you roll again, and unlike Monopoly, you won't go to Jail if you roll doubles 3 times in a row.

We really do not need to worry about a 4-sided board here--the only concern will be that if we roll 2 dice, how many turns will it take for the total on all the dice rolls to reach 40 or more (4 sides, 10 squares per side, 40 brings you back to GO again).  Later on we might spice things up a bit--e.g. if you land on square # 23, you pay \$25, square 31 nets you \$75, reaching GO again, \$200, etc.

The variables we need:  square:  this starts with 0, and as we roll the dice, we add the dice total to square--this is where we are on the board.  turncount:  how many turns we've taken so far.  We can start this off at 1 as we do our first dice roll.

We also need import random.  random.randrange(1,7) returns a random number between 1 and 6--a roll of one die.

square = 0
turncount = 1   #this gets us ready to roll!

while square < 40:
die1 = random.randrange(1,7)
die2 = random.randrange(1,7)     #our 2 dice
square = square + die1 + die2       #move forward
if die1 != die2:
turncount = turncount + 1       #turncount increases if we fail to roll a double

print "to pass GO took",turncount, "turns"
------------------------

to spice it up:
we add the variable money = 0
and  we can add to the while loop:
if square == 23:
money = money - 25
if square == 31:
money = money +75
and when we leave the loop--having passed GO,
money = money + 200
and we have also:
print "money = \$",money
------------------
there are plenty of ways to spice things up further!
----------------------------------------------