第二轮,j=3 n=0 判断成立 j=j+1,j=4 4 mod 4=0 则 n=n+1,n=1 跳出if j=j+1,j=5
…………
如此
最后 n输出为3
求采纳
你要注意了,所谓的整数就是不含小数的数,整型变量只能保存一个数的整数部分,而小数部分会被丢弃。在n=f中,因为n=f=3.6,由于n是整型变量,保存不了小数,所以小数据分被丢弃,n=3
f=n,由于f是浮点数,既能保存整数部分,又能保存小数部分f=n=3,但是小数部分为0,因为整型变量只能说明整数值是多少而无法说明小数部分的数据,因此小数部分默认就是0所以f=3.0
d=f,由于d和f都是浮点数,所以d=f=3.0清醒了吗
我的理解是sqrt(n)=sqrt(x)-sqrt(y)
则 x=(sqrt(n)+sqrt(y))^2
若要求x是整数,则必然要求n和y都是平方数,否则sqrt(n)+sqrt(y)是无理数,无理数的平方,不会是整数.
既然要求n和y是平方数
给定n,若n不是平方数,sqrt(n)=sqrt(x)-sqrt(y),没有正整数的x解
若n是平方数,则x的最大值限于你使用的数据类型.
举个例:
n=4时,
sqrt(4)=2=sqrt(64)-sqrt(36)
x=64.
不知道y是否有要求?
不知道我说的,和你的意思相不相同.
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)