编写程序求500 以内的勾股弦数,即满足 c2=b2+a2的3个数,要求b>a。将所有符合要求的组合存入文本文件中 ,每个组合占一行。
package 勾股数;
import java.io.*;
public class gougu {
public static void main(String args[]) {
A a=new A();
a.gougu();
}
}
class A{
String s;
void gougu() {
File file=new File("gougu.txt");
try {
FileWriter out=new FileWriter ("gougu.txt");
int a=3,b=4,c=5;
for(a=3;a<=500;a++)
for(b=a+1;b<=500;b++)
for(c=b;c<=500;c++) {
if(c*c>a*a+b*b) //k太大就跳出循环
break;
if(c*c==a*a+b*b) { //找到符合的就跳出循环
System.out.print(a+" "+b+" "+c+"\n");
s=a+" "+b+" "+c;
out.write(s);
out.write("\r\n");
out.flush();
break;
}
}
out.close();
}
catch(IOException e){
System.out.println("错误");
}
}
}