Java输入两个正整数A, B,求[A, B]内完全平方数的个数。( 1 ≤ A ≤ B ≤ 10^9 ) 测试时输入有极大的数,如:385793959 712365911 ,因此要用long类型存储
时间: 2023-12-19 13:32:29 浏览: 61
以下是Java求[A, B]内完全平方数个数的代码示例:
```java
public class SquareNumberCount {
public static void main(String[] args) {
long A = 385793959;
long B = 712365911;
int count = 0;
for (long i = A; i <= B; i++) {
long sqrt = (long) Math.sqrt(i);
if (sqrt * sqrt == i) {
count++;
}
}
System.out.println("完全平方数的个数为:" + count);
}
}
```
在这个示例中,我们使用了long类型来存储输入的正整数A和B,以便能够处理极大的数。然后,我们使用一个循环来遍历从A到B的所有数,对每个数进行平方根运算,并判断其平方根的平方是否等于原数。如果相等,则说明该数是完全平方数,将计数器count加1。最后,输出完全平方数的个数。
相关问题
java输入两个正整数A, B,求[A, B]内完全平方数的个数。( 1 ≤ A ≤ B ≤ 10^9 )
以下是Java求[A, B]内完全平方数个数的示例代码:
```java
import java.util.Scanner;
public class CountPerfectSquares {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入正整数A:");
int A = scanner.nextInt();
System.out.print("请输入正整数B:");
int B = scanner.nextInt();
int count = 0;
for (int i = A; i <= B; i++) {
if (isPerfectSquare(i)) {
count++;
}
}
System.out.println("在[" + A + ", " + B + "]内的完全平方数个数为:" + count);
}
// 判断一个数是否为完全平方数
public static boolean isPerfectSquare(int num) {
int sqrt = (int) Math.sqrt(num);
return sqrt * sqrt == num;
}
}
```
Java输入两个正整数A, B,求[A, B]内完全平方数的个数。( 1 ≤ A ≤ B ≤ 10^9 )
以下是Java求[A, B]内完全平方数个数的示例代码:
```java
import java.util.Scanner;
public class CountPerfectSquares {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入正整数A:");
int A = scanner.nextInt();
System.out.print("请输入正整数B:");
int B = scanner.nextInt();
int count = 0;
for (int i = A; i <= B; i++) {
int sqrt = (int) Math.sqrt(i);
if (sqrt * sqrt == i) {
count++;
}
}
System.out.println("在[" + A + ", " + B + "]内的完全平方数个数为:" + count);
}
}
```