Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Clear category for The Most Numbers by Bartek.Knobel
def checkio(*args):
z = len(args)
if z == 0:
return 0
elif z == 1:
return 0
else:
x = args[0]
y = args[0]
for i in range(z):
if args[i] > x:
x = args[i]
if args[i] < y:
y = args[i]
if x < 0:
if y < 0:
a = x * (-1)
b = y * (-1)
c = b - a
else:
a = x * (-1)
b = y
c = a + b
else:
if y > 0:
a = x
b = y
c = a - b
else:
a = x
b = y * (-1)
c = a + b
return c
#These "asserts" using only for self-checking and not necessary for auto-testing
if __name__ == '__main__':
def almost_equal(checked, correct, significant_digits):
precision = 0.1 ** significant_digits
return correct - precision < checked < correct + precision
assert almost_equal(checkio(1, 2, 3), 2, 3), "3-1=2"
assert almost_equal(checkio(5, -5), 10, 3), "5-(-5)=10"
assert almost_equal(checkio(10.2, -2.2, 0, 1.1, 0.5), 12.4, 3), "10.2-(-2.2)=12.4"
assert almost_equal(checkio(), 0, 3), "Empty"
Oct. 22, 2016
Comments: