我目前正在尝试编写一个处理复数的程序。我必须使用类和方法。我试图能够加、减、乘等,复数,以及将它们相互比较。我认为我有一个良好的开端,但有一些问题。
每种方法我都开始了,我想我只需要填补空白。在方法中,我使用 self.x 作为占位符。我不太确定那里发生了什么。首先,程序需要创建自己的复数。我是制作方法和函数的新手,我不确定我是否在正确的地方使用了 (self)。
我很确定我有一些语法问题,即它一直说变量“i”没有定义,当我清楚地在多个地方定义它时。
一旦所有这些都解决了,我需要创建一个实际使用代码的测试函数。
任何帮助,将不胜感激。谢谢!
到目前为止我的代码:
import math
i = math.sqrt(-1)
class Complex(object):
def __init__(Complex, a, b):
'''Creates Complex Number'''
a = 0
b = 0
return(Complex, a, b)
def __str__(Complex, a, b):
'''Returns complex number as a string'''
a = 0
b = 0
return str(a, b)
def __add__(self):
'''Adds complex numbers'''
i = math.sqrt(-1)
self.x = (a + bi) + (c + di) = (a + c) + (b + d)i
def __sub__(self):
'''Subtracts complex numbers'''
self.x = (a + bi) - (c + di) = (a - c) + (b - d)i
def __mul__(self):
'''Multiplies complex numbers'''
self.x = (a + bi) * (c + di) = (ac - bd) + (bc + ad)i
def __div__(self):
'''Divides complex numbers'''
self.x = (a + bi) / (c + di) = (ac + bd)/(c**2 + d**2) + (bc - ad)i/(c**2 + d**2)
def __abs__(self):
'''Determines absolute value of complex numbers'''
self.x = math.sqrt(a**2 + b**2)