【初心者歓迎】C/C++室 Ver.54【環境依存OK】
■ このスレッドは過去ログ倉庫に格納されています
0070デフォルトの名無しさん
2008/05/16(金) 03:04:1317と100が整数だから、17 / 100の結果も整数(切り捨てで0)になってしまう。
weight * 17 / 100と書いたときには、(weight * 17) / 100と扱われ、
weight * 17がfloat型で結果を返し、それに整数100を掛けても
やっぱりfloat型になるのでうまくいくという具合。
逆にいえば、17などをfloat型にすればいいわけで、
return weight * (17.0f / 100.0f);とすればうまくいく。
■ このスレッドは過去ログ倉庫に格納されています