Python实现获取前100组勾股数的方法示例


Posted in Python onMay 04, 2018

本文实例讲述了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))

程序执行结果:

a = 3, b = 4, c = 5
a = 5, b = 12, c = 13
a = 7, b = 24, c = 25
a = 9, b = 40, c = 41
a = 11, b = 60, c = 61
a = 13, b = 84, c = 85
a = 15, b = 112, c = 113
a = 17, b = 144, c = 145
a = 19, b = 180, c = 181
a = 21, b = 220, c = 221
a = 23, b = 264, c = 265
a = 25, b = 312, c = 313
a = 27, b = 364, c = 365
a = 29, b = 420, c = 421
a = 31, b = 480, c = 481
a = 33, b = 544, c = 545
a = 35, b = 612, c = 613
a = 37, b = 684, c = 685
a = 39, b = 760, c = 761
a = 41, b = 840, c = 841
a = 43, b = 924, c = 925
a = 45, b = 1012, c = 1013
a = 47, b = 1104, c = 1105
a = 49, b = 1200, c = 1201
a = 51, b = 1300, c = 1301
a = 53, b = 1404, c = 1405
a = 55, b = 1512, c = 1513
a = 57, b = 1624, c = 1625
a = 59, b = 1740, c = 1741
a = 61, b = 1860, c = 1861
a = 63, b = 1984, c = 1985
a = 65, b = 2112, c = 2113
a = 67, b = 2244, c = 2245
a = 69, b = 2380, c = 2381
a = 71, b = 2520, c = 2521
a = 73, b = 2664, c = 2665
a = 75, b = 2812, c = 2813
a = 77, b = 2964, c = 2965
a = 79, b = 3120, c = 3121
a = 81, b = 3280, c = 3281
a = 83, b = 3444, c = 3445
a = 85, b = 3612, c = 3613
a = 87, b = 3784, c = 3785
a = 89, b = 3960, c = 3961
a = 91, b = 4140, c = 4141
a = 93, b = 4324, c = 4325
a = 95, b = 4512, c = 4513
a = 97, b = 4704, c = 4705
a = 99, b = 4900, c = 4901
a = 101, b = 5100, c = 5101
a = 103, b = 5304, c = 5305
a = 105, b = 5512, c = 5513
a = 107, b = 5724, c = 5725
a = 109, b = 5940, c = 5941
a = 111, b = 6160, c = 6161
a = 113, b = 6384, c = 6385
a = 115, b = 6612, c = 6613
a = 117, b = 6844, c = 6845
a = 119, b = 7080, c = 7081
a = 121, b = 7320, c = 7321
a = 123, b = 7564, c = 7565
a = 125, b = 7812, c = 7813
a = 127, b = 8064, c = 8065
a = 129, b = 8320, c = 8321
a = 131, b = 8580, c = 8581
a = 133, b = 8844, c = 8845
a = 135, b = 9112, c = 9113
a = 137, b = 9384, c = 9385
a = 139, b = 9660, c = 9661
a = 141, b = 9940, c = 9941
a = 143, b = 10224, c = 10225
a = 145, b = 10512, c = 10513
a = 147, b = 10804, c = 10805
a = 149, b = 11100, c = 11101
a = 151, b = 11400, c = 11401
a = 153, b = 11704, c = 11705
a = 155, b = 12012, c = 12013
a = 157, b = 12324, c = 12325
a = 159, b = 12640, c = 12641
a = 161, b = 12960, c = 12961
a = 163, b = 13284, c = 13285
a = 165, b = 13612, c = 13613
a = 167, b = 13944, c = 13945
a = 169, b = 14280, c = 14281
a = 171, b = 14620, c = 14621
a = 173, b = 14964, c = 14965
a = 175, b = 15312, c = 15313
a = 177, b = 15664, c = 15665
a = 179, b = 16020, c = 16021
a = 181, b = 16380, c = 16381
a = 183, b = 16744, c = 16745
a = 185, b = 17112, c = 17113
a = 187, b = 17484, c = 17485
a = 189, b = 17860, c = 17861
a = 191, b = 18240, c = 18241
a = 193, b = 18624, c = 18625
a = 195, b = 19012, c = 19013
a = 197, b = 19404, c = 19405
a = 199, b = 19800, c = 19801
a = 201, b = 20200, c = 20201

由于程序中加入了是否为勾股数的判断,因此这个清单应该是准确的。这个小题目求解下来,我自己的感觉是做事的方法中算法还是至关重要的!

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
详解Python编程中包的概念与管理
Oct 16 Python
Python的Socket编程过程中实现UDP端口复用的实例分享
Mar 19 Python
python机器学习理论与实战(五)支持向量机
Jan 19 Python
python 删除字符串中连续多个空格并保留一个的方法
Dec 22 Python
使用python实现哈希表、字典、集合操作
Dec 22 Python
python 多进程队列数据处理详解
Dec 23 Python
Python面向对象封装操作案例详解 II
Jan 02 Python
屏蔽Django admin界面添加按钮的操作
Mar 11 Python
如何将tensorflow训练好的模型移植到Android (MNIST手写数字识别)
Apr 22 Python
Python tempfile模块生成临时文件和临时目录
Sep 30 Python
python 模块重载的五种方法
Apr 24 Python
python调用ffmpeg命令行工具便捷操作视频示例实现过程
Nov 01 Python
python XlsxWriter模块创建aexcel表格的实例讲解
May 03 #Python
Python 中的Selenium异常处理实例代码
May 03 #Python
Python读写/追加excel文件Demo分享
May 03 #Python
windows下安装Python的XlsxWriter模块方法
May 03 #Python
python使用openpyxl库修改excel表格数据方法
May 03 #Python
python实现跨excel的工作表sheet之间的复制方法
May 03 #Python
Python利用openpyxl库遍历Sheet的实例
May 03 #Python
You might like
php自动获取目录下的模板的代码
2010/08/08 PHP
PHP中防止直接访问或查看或下载config.php文件的方法
2012/07/07 PHP
PHPThumb图片处理实例
2014/05/03 PHP
php超快高效率统计大文件行数
2015/07/05 PHP
PHP架构及原理知识点详解
2019/12/22 PHP
javascript里的条件判断
2007/02/27 Javascript
javascript中的throttle和debounce浅析
2014/06/06 Javascript
jQuery实现提交按钮点击后变成正在处理字样并禁止点击的方法
2015/03/24 Javascript
JS或jQuery获取ASP.NET服务器控件ID的方法
2015/06/08 Javascript
Jquery实现弹性滑块滑动选择数值插件
2015/08/08 Javascript
KnockoutJS 3.X API 第四章之表单submit、enable、disable绑定
2016/10/10 Javascript
Vue 页面权限控制和登陆验证功能的实例代码
2019/06/20 Javascript
vue中使用v-for时为什么不能用index作为key
2020/04/04 Javascript
详解React的回调渲染模式
2020/09/10 Javascript
如何在vue 中使用柱状图 并自修改配置
2021/01/21 Vue.js
[01:34:42]NAVI vs EG 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
浅析Python中的多进程与多线程的使用
2015/04/07 Python
Python中矩阵库Numpy基本操作详解
2017/11/21 Python
Python3.6使用tesseract-ocr的正确方法
2018/10/17 Python
Django之Mode的外键自关联和引用未定义的Model方法
2018/12/15 Python
Python 从一个文件中调用另一个文件的类方法
2019/01/10 Python
mac系统下Redis安装和使用步骤详解
2019/07/09 Python
基于zepto的插件之移动端无缝向上滚动并上下触摸滑动实例代码
2016/12/20 HTML / CSS
保时捷设计:Porsche Design
2019/03/30 全球购物
大学生优秀的自我评价分享
2013/10/22 职场文书
社会保险接收函
2014/01/12 职场文书
40岁生日感言
2014/02/15 职场文书
文员求职信
2014/07/15 职场文书
浪漫婚礼主题活动策划方案
2014/09/15 职场文书
我的1919观后感
2015/06/03 职场文书
爱国之歌(8首)
2019/09/29 职场文书
MySQL学习总结-基础架构概述
2021/04/05 MySQL
python引入其他文件夹下的py文件具体方法
2021/05/23 Python
浅谈MySQL 亿级数据分页的优化
2021/06/15 MySQL
python解析照片拍摄时间进行图片整理
2022/07/23 Python
Spring boot admin 服务监控利器详解
2022/08/05 Java/Android