我用 Java 为 Project Euler ( http://projecteuler.net/ ) 编写代码。我对 Java 编码相当陌生,所以我只处理问题 #12,它要求您找到具有 500 多个因子的最小三角形数(例如,1+2+3+4+5)。我为它编写了代码,但由于某种原因,我的代码一直挂起:
int factors = 0;
long triangle = 0L;
for(int x = 1; factors <= 500; x++){
triangle += x;
for(int y = 1; y<=triangle; y++){
if(triangle%y==0){
factors = factors + 1;
}
}
if(factors > 500){
System.out.println(triangle);
}
else{
factors = 0;
}
}
为了篇幅的方便,我没有包括class或main。该程序没有编译时错误,但我无法弄清楚为什么它没有产生答案。
谢谢你的帮助