日本語プログラミング言語なでしこの公式掲示板

なでしこ の 掲示板

トップ 新規 検索

2017-05-16 11:22:53

Re①:除算の結果が・・・?

UNOパパ さん

こちら(Win7 + nadesiko 1.563)でも結果は同じでした。ちょっと実験してみました。

#---ここから---

a = 16800 / 1.2
aを表示            #14000
小数部分(a)を表示  #0.999999...
切り捨て(a)を表示  #13999

b = aの整数部分
bを表示            #13999

c = ROUND(a)

cの小数部分を表示  #14000
切り捨て(c)を表示  #0

#---ここまで---

上記、コメントに書いた様な値になってます。なでしこは数値を書いた場合
実数扱いなので、計算結果が割り切れていても、実数で持っている感じです。
(ただ、最初の計算結果aは14000と表示されるのがなぞなんですが…)

aの整数部分だけを抜き出すと13999になっているので、実際に計算結果は
13999.99999999...となっていて、表示する場合にまるめて表示している
可能性があります。

これを避ける方法はROUND()関数を使うぐらいしか思い当たりません。一番
近い整数に丸められるので、ROUND(a)が14000になります。

(編集パスワード送信)

子記事

親記事 (No.173)
返信した記事(元) (No.173)

この内容(No.176)に返信

この内容(No.176)をダウンロード

この内容(No.176)のテキスト表示





www.eznavi.net