gpt4 book ai didi

不使用内置类型和运算符的 Python 复数除法

转载 作者:太空宇宙 更新时间:2023-11-03 13:35:08 27 4
gpt4 key购买 nike

我必须实现一个名为 ComplexNumbers 的类,它代表一个复数,我不允许使用内置类型为了那个原因。我已经覆盖了运算符 (__add__, __sub__, __mul__, __abs__, __str_ > 允许执行基本操作。但现在我坚持要覆盖 __div__ 运算符。

允许使用:

我使用 float 来表示数字的虚部,使用 float 来表示 rel 部分。

我已经尝试过的:

  • 我查阅了如何执行复数除法(手写)
  • 我做了一个例子计算
  • 考虑过如何以编程方式实现它但没有任何好的结果

如何除复数的解释:

http://www.mathwarehouse.com/algebra/complex-number/divide/how-to-divide-complex-numbers.php

我的乘法实现:

 def __mul__(self, other):
real = (self.re * other.re - self.im * other.im)
imag = (self.re * other.im + other.re * self.im)
return ComplexNumber(real, imag)

最佳答案

我认为这应该足够了:

def conjugate(self):
# return a - ib

def __truediv__(self, other):
other_into_conjugate = other * other.conjugate()
new_numerator = self * other.conjugate()
# other_into_conjugate will be a real number
# say, x. If a and b are the new real and imaginary
# parts of the new_numerator, return (a/x) + i(b/x)

__floordiv__ = __truediv__

关于不使用内置类型和运算符的 Python 复数除法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41144760/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com