天假之名 发表于 2020-4-5 11:53:10

python 数字问题

满足x**2+y**2<=100,
且x,y都是整数的有序数对
(x,y)共有多少个?

这个问题,能用python解决吗
有什么好的方法吗

qiuyouzhi 发表于 2020-4-5 11:54:49

有序数对就是(3,4),(5,6)这样的吗?

wp231957 发表于 2020-4-5 11:56:32

qiuyouzhi 发表于 2020-4-5 11:54
有序数对就是(3,4),(5,6)这样的吗?


看错
............

qiuyouzhi 发表于 2020-4-5 12:02:16

先瞎写一个:
cnt = 0
flag = True
for i in range(100):
    for j in range(100):
      temp = i ** 2 + j ** 2
      if temp > 100:
            flag = False
            break
      else:
            cnt += 1
    if not flag:
      break
print(cnt)

墨羽岚 发表于 2020-4-5 12:03:26

说不定画图来得更快{:10_334:}
你先定义x、y为-10~10中的整数,然后if 判断一下后输出

墨羽岚 发表于 2020-4-5 12:04:38

qiuyouzhi 发表于 2020-4-5 12:02
先瞎写一个:

range(100)是0~100吧,楼主要的整数还包括了负数{:10_257:}

天假之名 发表于 2020-4-5 12:59:42

qiuyouzhi 发表于 2020-4-5 12:02
先瞎写一个:

这个好像不行啊

天假之名 发表于 2020-4-5 13:12:22

qiuyouzhi 发表于 2020-4-5 12:02
先瞎写一个:

for x in range(-100,101):
    for y in range(-100,101):
      if x**2 + y**2 <= 100:
            print(x,y)
   


这样怎么样

qiuyouzhi 发表于 2020-4-5 13:17:31

天假之名 发表于 2020-4-5 13:12
这样怎么样

能满足要求就行

天假之名 发表于 2020-4-5 13:21:01

number = 0
for x in range(-100,101):
    for y in range(-100,101):
      if x**2 + y**2 <= 100:
            number += 1
print(number)
   
页: [1]
查看完整版本: python 数字问题