我试图写一个方法来生成高斯整数的高斯除数序列-高斯整数要么是普通整数,要么是复数a和{}都是整数,高斯整数的高斯除数g是高斯整数d,因此{}也是高斯整数。在

我有下面的代码。在def is_gaussian_integer(c):

"""

Checks whether a given real or complex number is a Gaussian integer,

i.e. a complex number g = a + bi such that a and b are integers.

"""

if type(c) == int:

return True

return c.real.is_integer() and c.imag.is_integer()

def gaussian_divisors(g):

"""

Generates a sequence of Gaussian divisors of a rational or Gaussian

integer g, i.e. a Gaussian integer d such that g / d is also a Gaussian integer.

"""

if not is_gaussian_integer(g):

return

if g == 1:

yield complex(g, 0)

return

g = complex(g) if type(g) == int or type(g) == float else g

a = b = 1

ubound = int(math.sqrt(abs(g)))

for a in range(-ubound, ubound + 1):

for b in range(-ubound, ubound + 1):

if a or b:

d = complex(a, b)

if is_gaussian_integer(g / d):

yield d

yield g

它似乎“基本上”起作用,但对于某些输入,它缺少一些高斯除数,例如对于2,我希望序列包含除数{}(它只是-2),但它丢失了。我不明白它为什么要这么做,也不明白逻辑上有什么漏洞。在

^{pr2}$

python3里复数的算法,Python 3复数相关推荐

  1. python判断复数_在python中复数怎么表示

    详细内容 我们把形如z=a+bj(a,b均为实数)的数称为复数,其中a称为实部,b称为虚部,j称为虚数单位. 一个复数时一对有序浮点数 (x,y),其中 x 是实数部分,y 是虚数部分. Python ...

  2. python3里复数的算法_Python高级复数算法

    示例 该模块cmath包括使用复数的附加功能. import cmath 此模块可以计算弧度的复数相位: z = 2+3j # 复数 cmath.phase(z) # 0.98279372324732 ...

  3. python中复数采用什么方法提取实部_讲解Python3中NumPy数组寻找特定元素下标的两种方法 python3中怎样实现对一个复数取实部...

    python numpy 数组提取某一列大于某一直的数据 import numpy as npa=np.arange(9).reshape(3,3)12 a Out[31]: array([[0, 1 ...

  4. python支持复数以及相关的运算吗_python复数运算

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 和大多数语言一样,python也有很多运算符,并且运算符跟其他语言的运算符大同小 ...

  5. python支持复数以及相关的运算吗_Python复数属性和方法运算操作示例

    本文实例讲述了Python复数属性和方法运算操作.分享给大家供大家参考,具体如下: #coding=utf8 ''''' 复数是由一个实数和一个虚数组合构成,表示为:x+yj 一个负数时一对有序浮点数 ...

  6. python计算复数的辐角_Python机器学习(五十六)SciPy fftpack(傅里叶变换)

    SciPy提供了fftpack模块,包含了傅里叶变换的算法实现. 傅里叶变换把信号从时域变换到频域,以便对信号进行处理.傅里叶变换在信号与噪声处理.图像处理.音频信号处理等领域得到了广泛应用. 如需进 ...

  7. python的复数的实部虚部都是浮点数吗_python中复数的共轭复数知识点总结

    理科学生应该都了解过共轭吧,经常在数学或者物理还有化学中出现,在坐标轴上去描述共轭函数还是比较清晰的,py语言里也经常会出现关于共轭函数的使用,操作也非常有趣, 在计算机课上,经常被当做考试的试题,了 ...

  8. python支持复数类型以下说法错误的是,Python支持复数类型,以下哪个说法是错误的?...

    Python支持复数类型,以下哪个说法是错误的? 答:虚部后缀j必须是小写形式 特性曲线是实验测定的 答:对 公元前7世纪末,罗马国王塞尔维乌斯 · 图里乌斯用以财产为基础公民兵取代了氏族武装,从而将 ...

  9. python中复数类型与数学中复数的概念一致_2020年9月计算机二级python选择题在线题库12/15...

    1.在最坏情况下比较次数相同的是(). A.冒泡排序与快速排序 B.简单插入排序与希尔排序 C.简单选择排序与堆排序 D.快速排序与希尔排序 A  [解析]冒泡排序.快速排序.简单插入排序.简单选择排 ...

最新文章

  1. 成天说要删库跑路,这次真的有人干了
  2. HTTP 500 服务器内部错误的解决方法
  3. PHP服务器脚本实例,Shell脚本实现的一个简易Web服务器例子分享_linux shell
  4. 开发工程中遇到的BUG
  5. 同样是查询语言,它和 SQL 竟然有这么多不同
  6. iis创建php网站,iis怎么搭建php
  7. Linux下libxml2编程基础
  8. 牛客14607 递推(矩阵快速幂构造)
  9. python-文件和流
  10. Chapter 12 外观模式
  11. copyToLocalFile报出空异常
  12. Android Note-android studio 无法创建android项目
  13. bzoj1237 [SCOI2008]配对 贪心结论+插数dp
  14. Mangos导入AI的教学
  15. 【Kernel Method】Kernel Method核方法介绍
  16. HTML5CSS3网页设计仿微信通讯录页
  17. SQL数据库连接失败
  18. krpano使用gyro2.js自定义陀螺仪
  19. js pug 代码_pug模板引擎(原jade)
  20. SAP 常用增强记录文档

热门文章

  1. wsl(Windows Subsystem for Linux)启动多个子系统和设置默认启动子系统
  2. 计算机网络知识汇总(十万字超详细)
  3. python:鸡尾酒疗法
  4. 打开工控机电源而计算机没有反应,工控机开机后无反应如何解决
  5. java基础复习-集合框架(1)
  6. 【张小平工作日志】DBCP、c3p0、Druid、Proxool数据库连接池比较
  7. 石英晶体(Crystal)振荡电路
  8. el表达式ne什么意思_JSP中EL表达式的用法详解(必看篇)
  9. 爬虫教程:如何批量采集知乎
  10. 百度谷歌必应搜狗知乎 可切换搜索框的实现