勾股数元组 java
时间: 2023-11-18 20:55:23 浏览: 155
求50以内的勾股数组
勾股数元组是指三个正整数a、b、c组成的元组,满足勾股定理 a^2 + b^2 = c^2,并且a、b、c两两互质(即a与b,a与c,b与c之间均互质,没有公约数)。在Java中,可以通过编写程序来寻找勾股数元组。
以下是一个简单的Java程序,用于寻找给定范围内的勾股数元组,并按照A B C升序的排序方式输出。如果给定范围内找不到勾股数元组,则输出Na。
```
import java.util.Scanner;
public class PythagoreanTriple {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int n = input.nextInt();
boolean found = false;
for (int a = 1; a <= n; a++) {
for (int b = a + 1; b <= n; b++) {
for (int c = b + 1; c <= n; c++) {
if (a * a + b * b == c * c && gcd(a, b) == 1 && gcd(b, c) == 1 && gcd(a, c) == 1) {
System.out.println(a + " " + b + " " + c);
found = true;
}
}
}
}
if (!found) {
System.out.println("Na");
}
}
public static int gcd(int a, int b) {
if (b == 0) {
return a;
} else {
return gcd(b, a % b);
}
}
}
```
阅读全文