【初心者歓迎】C/C++室 Ver.54【環境依存OK】at TECH【初心者歓迎】C/C++室 Ver.54【環境依存OK】 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト68:デフォルトの名無しさん 08/05/16 02:59:30 すいません、>>67ですが、環境はDev-C++です。 69:デフォルトの名無しさん 08/05/16 03:01:40 intをintで割ったときでも値はint。つまり(17/100)は小数点以下が切り捨てられて0になる。 (17.0/100)とかならOK 70:デフォルトの名無しさん 08/05/16 03:04:13 >>67 17と100が整数だから、17 / 100の結果も整数(切り捨てで0)になってしまう。 weight * 17 / 100と書いたときには、(weight * 17) / 100と扱われ、 weight * 17がfloat型で結果を返し、それに整数100を掛けても やっぱりfloat型になるのでうまくいくという具合。 逆にいえば、17などをfloat型にすればいいわけで、 return weight * (17.0f / 100.0f);とすればうまくいく。 71:デフォルトの名無しさん 08/05/16 03:09:58 >>69 >>70 なるほど、型が大きいほうに合わせられるっていうのは数値だけの計算にも当てはまるんですね。 変数だけしかそういう風にならないと勘違いしていました。 非常に分かりやすい説明ありがとうございました。勉強になりました。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch