[英]Pythagorean triple calculation in java
我找到了一種方法來計算所有勾股三重體,直到達到一定數目,但是我的程序以不同的順序重復了一些。 我如何避免這種情況? 我嘗試通過c值組織勾股三重體(a a + b b = c * c)這是我的代碼
import java.util.Scanner;
public class Ex4 {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
int Number;
Number = s.nextInt();
for(int c=1;c<Number;c++){
for(int b=1;b<Number;b++){
for(int a=1;a<Number-2;a++){
if(a*a + b*b == c*c)
System.out.println("("+a+","+b+","+c+") : "+a+"*"+a+" + "+b+"*"+b+" = "+c+"*"+c);
}
}
}
}
}
進行更改:
for(int c=1;c<Number;c++){
for(int b=1;b<c;b++){
for(int a=1;a<b;a++){
if(a*a + b*b == c*c )
但請注意,甚至是更有效的方法,例如Euclid公式
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.