python/practice_1.py

63 lines
2.0 KiB
Python

class Math(object):
def sum (self, *args, **kargs) -> float:
result = sum(args)
return result
def sub (self, *args, **kargs) -> float:
if len(args) < 2:
raise ValueError("sub requires at least two arguments")
result = args[0] - args[1]
return result
def mult (self, *args, **kargs) -> float:
if len(args) < 2:
raise ValueError("mult requires at least two arguments")
result = args[0] * args[1]
return result
def div (self, *args, **kargs) -> float:
if len(args) < 2:
raise ValueError("div requires at least two arguments")
result = args[0] / args[1]
return result
def fdiv (self, *args, **kargs) -> float:
if len(args) < 2:
raise ValueError("fdiv requires at least two arguments")
result = args[0] // args[1]
return result
def pow (self, *args, **kargs) -> float:
if len(args) < 2:
raise ValueError("pow requires at least two arguments")
result = args[0] ** args[1]
return result
def mod (self, *args, **kargs) -> float:
if len(args) < 2:
raise ValueError("mod requires at least two arguments")
result = args[0] % args[1]
return result
def avg (self, *args, **kargs) -> float:
if len(args) < 2:
raise ValueError("avg requires at least two arguments")
result = (sum(args)/len(args))
return result
s = Math()
print(f"Sum: {s.sum(3.564, 92.335, 14.56):.2f}")
print(f"Product: {s.mult(8.56, 3.567):.2f}")
print(f"Difference: {s.sub(8.56, 3.567):.2f}")
print(f"Floor Division: {s.fdiv(8.56, 3.567):.2f}")
print(f"Power: {s.pow(8.56, 3.567):.2f}")
print(f"Mod: {s.mod(8.0, 3.0):.2f}")
print(f"Average: {s.avg(8.56, 3.567, 73.45, 10.778, 14.334, 56.789):.2f}")
print(f"Division: {s.div(8.56, 3.567):.2f}")
print(f"Average: {s.avg(2, 3, 4, 53, 6):.2f}")