我找到了一种方法来计算所有勾股三叉号直到一定数目为止,但是我的程序以不同的顺序重复了一些。我如何避免这种情况?我尝试通过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公式
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句