Difference between revisions of "CSC111 Midterm Solution Programs"
(Created page with '--~~~~ ---- <source lang="python"> from graphics import * def f1( L ): L.sort() print L[0], L[1], L[len(L)/2+1], L[-2], L[-1] def f2( x, y ): x = x + 3 y = y - x …') |
|||
Line 8: | Line 8: | ||
def f1( L ): | def f1( L ): | ||
L.sort() | L.sort() | ||
− | print L[0], L[1], L[len(L)/2 | + | print L[0], L[1], L[len(L)/2], L[-2], L[-1] |
def f2( x, y ): | def f2( x, y ): |
Revision as of 12:40, 20 March 2010
--D. Thiebaut 17:15, 20 March 2010 (UTC)
from graphics import *
def f1( L ):
L.sort()
print L[0], L[1], L[len(L)/2], L[-2], L[-1]
def f2( x, y ):
x = x + 3
y = y - x
return y, x
def f3():
win = GraphWin( "midterm", 100, 100 )
r = Rectangle( Point( 10, 10 ), Point( 20, 20 ) )
r.draw( win )
r.setFill( "black" )
win.getMouse()
win.close()
def f4():
win = GraphWin( "midterm", 100, 100 )
for x in range( 10, 60, 20 ):
for y in range( 10, 60, 20 ):
r = Rectangle( Point( x, y ), Point( x+10, y+10 ) )
r.draw( win )
r.setFill( "black" )
win.getMouse()
win.close()
def f5():
L = [ ['a', 1, 10], ['b',1, 100], ['c', 3, 3], ['f', 4, 5], ['d', 2, 4] ]
newL = []
for name, val1, val2 in L:
newL.append( [ val1/val2, name ] )
newL.sort()
val, name = newL[ 0 ]
print "The item with the smallest relative value is", name
def f6():
print "f6"
for i in range( 3 ):
print i
for j in range( i+1 ):
print i+j
print "done!"
def f7():
print "f7"
for i in range( 3 ):
print "i=", i
for j in range( -i, 0 ):
print j
print "done!"
def f8():
L = [
# 1 2 3
#012345678901234567890123456789012345
"alpha 102 50",
"beta 33 100",
"gamma 160 22",
"delta 100 34" ]
newL = []
for line in L:
name = line[0:20].strip() # remove extra space
num1 = int( line[20:30].strip() )
newL.append( (num1, name) )
newL.sort()
print newL[-1][1] # print 2nd item in last pair
def f9():
print "f9()"
print "0 1 2 3"
print "012345678901234567890123456789012345"
L = [ ("alpha", 102, 50), ( "beta", 33, 100), ("gamma", 160, -22), ("delta", 100, 340000 )]
for name, v1, v2 in L:
print "%-20s%-10d%-10d" % ( name, v1, v2 )
def main():
#--- Pb 1 ---
f1( [ 10, 3, -1, 2, 6, 11, 5] )
f1( [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, -1] )
#--- Pb 2 ---
a = 10 # input( "a? " )
b = 20 # input( "b? " )
x, y = f2( a, b )
print x, y
#f3()
#f4()
f5()
f6()
f7()
f8()
f9()
main()