これがスクリプトです。なぜ機能しないのかわかりません...
function FirstFactorial(num) {
var lower = num - 1;
var qq = 0;
while (num > 0) {
var qq === num * lower;
num--;
lower--;
}
num === qq;
return num;
}
FirstFactorial(num);
これがスクリプトです。なぜ機能しないのかわかりません...
function FirstFactorial(num) {
var lower = num - 1;
var qq = 0;
while (num > 0) {
var qq === num * lower;
num--;
lower--;
}
num === qq;
return num;
}
FirstFactorial(num);
=
代入演算子、===
厳密等価演算子
この関数にはかなりの問題があります。コメントを参照してください。
function FirstFactorial(num) {
var lower = num - 1;
var qq = 0;
while (num > 0) {
// here you are shadowing the "qq" variable in the outer scope
// delete the "var" keyword to fix this
// also === is an identity operator, i think you wanted assignment (=)
// so this line becomes: qq = num * lower;
var qq === num * lower;
num--;
lower--;
}
// assuming that === was supposed to be = again
// you can rewrite this as just: return qq;
num === qq;
return num;
}
FirstFactorial(num);
これらの構文上の修正を行っても、階乗を計算するロジックは正しくありません。
編集:実例(退屈だったので)http://jsfiddle.net/gU2cz/