题目
在10万以内判断一个整数,它加上 100 后是一个完全平方数,再加上 268 又是一个完全平方数,请问该数是多少?
平方数定义:完全平方指用一个整数乘以自己例如1*1
,2*2
,3*3
等,依此类推。若一个数能表示成某个整数的平方的形式,则称这个数为完全平方数。——from百度百科
以下
public class PerfectSquare {
public static void main(String[] args) {
for (int i = 1; i <=100000 ; i++) {
int x = (int)Math.sqrt(i+100);
int y = (int)Math.sqrt(i+268);
if(x*x==(i+100)&&y*y==(i+268)){
System.out.println(i);
}
}
}
}
一开始我想了一个超级笨的办法……26行;
最后觉得还是得开方后强制转换。
强制转换后直接丢掉小数点后的数。