Search on the blog

2010年8月30日月曜日

四捨五入をしよう。

C言語、またはC++で四捨五入をするときどういったコードを書きますか?

無知な私はこんなヘタレコードを書きました。

int main() {
double x;
int ret;

scanf("%lf", &x);
ret = ((int)(x * 10) % 10 >= 5) ? (int)(x + 1) : (int)(x);
printf("ret=%d\n", ret);

return 0;
}

あーー、もう穴があったら入りたい。
これで行けますね。

int main() {
double x;
int ret;

scanf("%lf", &x);
ret = (int)(x + 0.5);
printf("ret=%d\n", ret);

return 0;
}
0.5足してintにキャスト、これで四捨五入できます。
はい、今日は以上。

0 件のコメント:

コメントを投稿