雖然試圖解決這個project euler problem(使用開發人員工具中的Google chrome - snippets功能來編碼和執行),但我遇到了一個奇怪的行爲。谷歌Chrome開發者工具在嵌套for循環中不一致
var palFound = false;
isPal = function (word) {
var wordCount = word.length;
for (i = 0; i < wordCount; i++) {
if (word[i] != word[wordCount - i - 1]) {
return false;
}
}
return true;
}
for (var k = 999; k >= 100; k--) {
for (var j = 999; j >= 100; j--) {
var prod = k * j,
prodString = prod + '';
if (isPal(prodString)) {
console.log(prod, k, j);
palFound = true;
break;
}
}
if (palFound) {
break;
}
}
上面的代碼應該理想地顯示第一個遇到的迴文的產品,並執行上面的代碼應該break.But顯示一個錯誤的答案580085是995產品,583
但for循環時限制被改變爲999至900(如下所示),顯示正確答案 - 906609它是993的產物和913
for(var k=999;k >=900;k--){
for(var j=999;j>=900;j--)
理想地,993和913應首先遇到,而不是995和583我很想知道爲什麼這很開心效果圖創作?
尋求幫助時,請可讀地縮進代碼。這次我已經爲你做了。 –
謝謝@ T.J。克勞德,會做。 –