関数に与えられた数値を最も近いペンス全体に丸める関数があります。
<script type='text/javascript'>
Math.roundNumber = function(a,b){
if(!isNaN(parseInt(a))){
c = Math.pow(10,b);
return (Math.round(a*c)/c);
}
return false;
}
</script>
ただし、関数に入力された数値は、最も近い1ペンスに切り上げる必要がありますが、小数点以下2桁に切り上げる必要があることに気付きました。
例えば
15.236562213541684は=15.24になります 9846.65456169846は=9846.66になります
リターンを変更するだけの場合だと思いました(Math.round(a c)/ c); 戻るには(Math.ceil(a c)/ c);
明らかに私は非常に間違っていました。
この問題について何か助けはありますか?
** 編集 **
これが私が達成しようとしている公式です多分それは助けになるでしょう
a = intrest price
b = terms
c = a/b
d = c*(b-1)
e = a-d
たとえば
a = 295.30
b = 156
c = 295.30/156 = 1.90 (rounded up to nearest decimal as above)
d = 1.90 * (b-1) = 294.50
e = 295.30 - 294.50 = 0.80
誰かが上記を行うための関数を正しくすることができますか?
これが私が持っている現在のコードへのリンクです...それは私が最初にJavaScriptを始めたときに作った非常に古い式です(これは少し前です)が、私は当時のように今でも良くありません。
誰かがそれをクリーンアップして、なぜそれが上記の機能と一致するように機能しないのかを理解できるかどうかを確認できますか?