1
function subtraction(num1, num2){       
    var num3; 
    num3 = num1 - num2;
    document.writeln("Difference "+ num3);
    return (num3);
}    

function division(num1, num2){
    difference = parseFloat(subtraction());
    var x;
    while(difference > 0){
        difference = num1-num2;
        x = x + 1;
    }
    document.writeln("Quotient" + x);
}

やあ!除算関数を実行したかったのですが、問題は "/" を使用しないことです。これは私が得たもので、これまでのところ「未定義」と出力され、x = 0 と指定すると「0」と出力されます。

4

3 に答える 3

0

数値を計算する場合は、再帰を使用してこれを行うより簡単な方法です。

function divide(num,denom) {
  if (num < denom) return 0;
  return (1 + divide(num - denom, denom));
}

負の数の場合、数値が 0 未満であるかどうかを追跡するためにこれを拡張する必要があります。また、簡潔ですっきりとしていますが、最大コール スタック サイズを超えるため、大きな分子と小さな分母ではこれが機能しなくなります。

于 2013-10-09T15:30:17.470 に答える