当前位置:首页 > 实验代码 > 正文内容

python完全平方数

千帆1周前 (12-24)实验代码100

一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?

因为168对于指数爆炸来说实在太小了,所以可以直接省略数学分析,用最朴素的方法来获取上限:


n=0

while (n+1)**2-n*n<=168:

    n+=1


print(n+1)

 

思路是:最坏的结果是n的平方与(n+1)的平方刚好差168,由于是平方的关系,不可能存在比这更大的间隙。

至于判断是否是完全平方数,最简单的方法是:平方根的值小数为0即可。

结合起来:


n=0

while (n+1)**2-n*n<=168:

    n+=1


for i in range((n+1)**2):

    if i**0.5==int(i**0.5) and (i+168)**0.5==int((i+168)**0.5):

        print(i-100)

扫描二维码推送至手机访问。

版权声明:本文由千帆生活网发布,如需转载请注明出处。

本文链接:http://ntshw.com/?id=187

分享给朋友:

“python完全平方数” 的相关文章

文本框只允许输入数字的控制方法

onKeyUp="if(isNaN(value))execCommand('undo')" onafterpaste="if(isNaN(value))execCommand('undo')"...

修改sql数据库名称

EXEC sp_dboption 'OldDbName', 'Single User', 'TRUE' EXEC sp_renamedb 'OldDbName', 'NewDbName' EXEC s...

Python 数字求和

# 用户输入数字num1 = input('输入第一个数字:')num2 = input('输入第二个数字:')# 求和sum = float(num1) + float(num2)# 显示计算结果,format是一个内置函数,主要用于对字符串进行格式化处理‌。它通过...

Python随机数生成

# 生成 0 ~ 9 之间的随机数''' 此处为多行注释:导入 random(随机数) 模块,使用了 random 模块的 randint() 函数来生成随机数,你每次执行后都返回不同的数字(0 到 9)该函数的语法为:random.randint(a,b)''...

Python输出指定范围内的素数

# 输出指定范围内的素数# take input from the userlower = int(input("输入区间最小值: "))upper = int(input("输入区间最大值: "))for num in range(lower,upper +...