本文实例讲述了Python实现获取前100组勾股数的方法。分享给大家供大家参考,具体如下:
本来想采用穷举试探的方式来做这个算法,后来发现还是有点麻烦。从网络上找来了一种求解方法如下:
当a为大于1的奇数2n+1时,b=2n^2+2n,c=2n^2+2n+1。实际上就是把a的平方数拆成两个连续自然数。
编写代码如下:
#!/usr/bin/python for n in range(1,101): a = 2 * n +1 b = 2 * (n** 2) + 2 * n c = b + 1 # check theresult if a ** 2 +b ** 2 == c ** 2: print("a= %d, b = %d, c = %d" %(a,b,c))
程序执行结果:
由于程序中加入了是否为勾股数的判断,因此这个清单应该是准确的。这个小题目求解下来,我自己的感觉是做事的方法中算法还是至关重要的!
更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数学运算技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》
希望本文所述对大家Python程序设计有所帮助。