我正在尝试解决项目欧拉问题9:
毕达哥拉斯三元组是一组三个自然数,a <b <c,其中,a2 + b2 = c2
例如,32 + 42 = 9 + 16 = 25 = 52.
恰好存在一个毕达哥拉斯三元组,其中a + b + c = 1000.找到产品abc.
我在维基百科上查找了找到毕达哥拉斯三元组的公式,并尝试将其翻译成代码.问题是代码输出了错误的答案,但我认为代码是正确的.
var a, b, c;
var pos1, pos2, pos3;
var ans1, ans2, ans3;
for(var n=2; n<=20000; n++) {
a = 2 * n + 1;
b = 2 * n * (n +1);
c = 2 * n * (n +1) + 1;
if(a<b<c) {
if(a^2 + b^2 === c^2) …Run Code Online (Sandbox Code Playgroud)