北欧女神蕾娜斯 psp:VB高手帮帮忙

来源:百度文库 编辑:高考问答 时间:2024/05/15 10:46:50
找出所有小于或等于100的自然数对。自然数对是指两个自然数的和与差都是平方数。如16与20的和16+20=36,16与20的差20-16=4都是平方数,则16和20称自然数对。
怎么编啊

分析:一个数是不是平方数可以用sqr(x)=int(sqr(x))来验证;
现在找的是100以内的自然数对,如果从1 to 100这样用sqr(x)=int(sqr(x))来验证,循环次数为100×100=10000。再往下分析,可以发现很多重复了,比如:5,3与3,5,解决这个也很简单如j=i to 100。具体程序如下:

dim i as integer,j as integer
for i=1 to 100
for j=i to 100
if sqr(j+i)=int(sqr(j+i)) and sqr(j-i)=int(sqr(j-i)) then print i & "与" & j & "是一组自然对数。"
next j
next i