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

#假设这个整数是i,i+100 = n2 ,i+100+168 =m2
#m2-n2=(m+n)(m-n)=168+100+i-100-i

#math库不支持复数类型,仅支持整数和浮点数运算
import math
for z in range(-100,10000):
    x = int(math.sqrt(100+z))   #sqrt(x),返回x的平方根
    y = int(math.sqrt(268+z))
    if (x*x==(100+z))and (y*y==(z+268)):
        print(z)

——如果有sqrt,则range不能有负数,因为不能对负数开方,此处有容易出错的地方,当z=-99时是可以得到整数的x.y。所以(-100,10000)是可以的;!!!但是(-10000,10000)就不可以,因为会有负数,sqrt不能对负数开方,
——所以这个公式并不是很完善,有优化的空间

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值