import java.util.HashSet;
import java.util.Set;
public class Cubesprove {
public static void main(String[] args) {
int b=0;
int c=0;
for (int a = 1; a <=1000; a++) {
int a1=(int) Math.pow(a,3);
int d=(int) Math.pow(b,3)+(int)Math.pow(c,3);
if(a1==d){
System.out.println(a+"^3"+"="+b+"^3"+c+"^3");
}
else{
System.out.println("can't prove");
}
}
}
}
怎么再遍历b和c??
麻烦大家给个思路或者代码
------解决思路----------------------
import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Frame;
import java.awt.LayoutManager;
import java.util.ArrayList;
public class test {
public static void main(String[] args) {
//遍历所有数字,作为第一个数字,作为a
boolean hasNotNum=true;
for (int i = 0; i < 1000; i++) {
//遍历从0到a的所有数字,作为b
for (int j = 0; j < i; j++) {
//如果有相等,则下一次循环。
if(j==i)continue;
//遍历从0到a的所有数字,作为c
for (int j2 = 0; j2 < i; j2++) {
//如果有相等,则下一次循环。
if (j2==j
------解决思路----------------------
j2==i) {
continue;
}
if (i*i*i==j*j*j+j2*j2*j2) {
System.out.println(i);
System.out.println(j);
System.out.println(j2);
hasNotNum=false;
}
}
}
}
if (hasNotNum) {
System.out.println("没有这样的数字");
}
}
}
遍历就行了