int 同士のデータの割算はいわゆる整商が計算される。つまり「余りのある 割算をしたときの商」、言い替えると「商の整数部分」になることに注意しよ う。例えば
7 / 2 は 3となる。
1 / 10 は 0
初心者のうちにありがちなミスに
int n; double h; .... h = 1 / n;のようなものがある。これは h に を代入してい るつもりなのだろうが、とんでもない結果(大抵は 0)が代入される。
h = 1.0 / n;とすべきである。この場合、分子が double 型の定数だから、n は double 型に変換されてから割算が実行される。 分子、分母ともに int 型の定数であるような場合は、
int num_win, num_games; double rate; ... rate = (double) num_win / num_games;のように少なくとも一方のデータを double にキャストすれば良い。