+17
python/assignments/sep30/dotsOverlap.py
+17
python/assignments/sep30/dotsOverlap.py
···
1
+
from math import sqrt
2
+
def distance(a, b):
3
+
return sqrt((b[0]-a[0])**2 + (b[1]-a[1])**2)
4
+
5
+
def dotsOverlap(x1, y1, r1, x2, y2, r2):
6
+
d = distance((x1, y1), (x2, y2))
7
+
return d <= (r1+r2)
8
+
9
+
print('Testing dotsOverlap()...')
10
+
assert(dotsOverlap(0, 0, 2, 3, 0, 2) == True)
11
+
assert(dotsOverlap(0, 0, 2, 5, 0, 2) == False)
12
+
assert(dotsOverlap(0, 0, 2, 4, 0, 2) == True)
13
+
assert(dotsOverlap(-4, 5, 2, -3, 5, 5) == True)
14
+
assert(dotsOverlap(3, 3, 3, 3, -3, 2.99) == False)
15
+
assert(dotsOverlap(3, 3, 3, 3, -3, 3) == True)
16
+
assert(dotsOverlap(5, 3, 0, 5, 3, 0) == True)
17
+
print('Passed!')
+17
python/assignments/sep30/getGreen.py
+17
python/assignments/sep30/getGreen.py
···
1
+
def fullRGB(rgb):
2
+
rgb = str(rgb)
3
+
while len(rgb) < 9:
4
+
rgb = '0' + rgb
5
+
return rgb
6
+
7
+
def getGreen(rgb):
8
+
return int(fullRGB(rgb[3:6]))
9
+
10
+
print('Testing getGreen()...', end='')
11
+
assert(getGreen(218112214) == 112)
12
+
assert(getGreen(134134134) == 134)
13
+
assert(getGreen(111019213) == 19)
14
+
assert(getGreen(221000000) == 0)
15
+
assert(getGreen(32175) == 32)
16
+
assert(getGreen(0) == 0)
17
+
print('Passed!')
+19
python/assignments/sep30/isGray.py
+19
python/assignments/sep30/isGray.py
···
1
+
def fullRGB(rgb):
2
+
rgb = str(rgb)
3
+
while len(rgb) < 9:
4
+
rgb = '0' + rgb
5
+
return rgb
6
+
7
+
def isGray(rgb):
8
+
rgb = fullRGB(rgb)
9
+
return (rgb[0:3] == rgb[3:6]) and (rgb[3:6] == rgb[6:9])
10
+
11
+
print('Testing isGray()...', end='')
12
+
assert(isGray(112112112) == True)
13
+
assert(isGray(112112113) == False)
14
+
assert(isGray(123195060) == False)
15
+
assert(isGray(255255255) == True)
16
+
assert(isGray(0) == True)
17
+
assert(isGray(19019019) == True)
18
+
assert(isGray(175112) == False)
19
+
print('Passed!')
+18
python/assignments/sep30/nthFibonacciNumber.py
+18
python/assignments/sep30/nthFibonacciNumber.py
···
1
+
from math import sqrt
2
+
3
+
def almostEqual(x, y):
4
+
return (abs(x - y) < 10**-9)
5
+
6
+
def nthFibonacciNumber(n):
7
+
n += 1
8
+
return ((1+sqrt(5))**n - (1-sqrt(5))**n)/(sqrt(5)*2**n)
9
+
10
+
print('Testing nthFibonacciNumber()...', end='')
11
+
assert(almostEqual(nthFibonacciNumber(0), 1))
12
+
assert(almostEqual(nthFibonacciNumber(1), 1))
13
+
assert(almostEqual(nthFibonacciNumber(2), 2))
14
+
assert(almostEqual(nthFibonacciNumber(3), 3))
15
+
assert(almostEqual(nthFibonacciNumber(4), 5))
16
+
assert(almostEqual(nthFibonacciNumber(5), 8))
17
+
18
+
print('Passed!')