解题思路:(1)Math.sqrt()函数可以得到应该double类型的非负平方根,强制取整再+1
(2)对所有负数来说,最小的完全平方数都是0
注意事项:
参考代码:
import java.util.Scanner; public class Main7 { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub /*输出大等于n的最小的完全平方数。 若一个数能表示成某个自然数的平方的形式,则称这个数为完全平方数*/ Scanner scanner=new Scanner(System.in); long a=scanner.nextLong(); double b=Math.sqrt(a); long c=0; if (a<=0) { c=0; }else if ((long)b*(long)b==a) { c=(long)b; }else { c=(long)b+1; } System.out.println(c*c); } }
0.0分
1 人评分