混合演算

整数どうしの演算結果は整数になります。例えば、a = 7, b = 2 の場合 a/b の値は、小数点以下は切り捨てられ整数値の3となります。

整数どうし、あるいは実数どうしの算術演算だけでなく、演算子は整数と実数が混ざった計算式にも使うことができます。このように、異なる型どうしの演算を混合演算といい、データ型を変換することを型変換といいます。混合演算における型変換は精度の高い方へ変換が行われます。例えば、次のプログラムを考えます。

int x = 3;
int y = 2;
double f1, f2;
f1 = 3 / 2;        /* 整数どうしの計算は小数点以下が切り捨てられる */
f2 = 1.0 * 3 / 2;  /* 精度の高い実数へ変換される */

f1 の値は 1.0, f2 の値は 1.5 となります。

表示桁数の指定

iomanip を include し、std::fixedstd::setprecisionを用いて小数点以下の表示桁数を指定することができます。

例えば、変数 a の値を小数点以下 8 桁まで出力する場合は以下のように記述します。

#include 

...

std::cout << std::fixed << std::setprecision(8);
std::cout << a << std::endl;

Reference

 

オンラインジャッジではじめるC/C++プログラミング入門 (マイナビ)

AIZU ONLINE JUDGE のコース問題を題材にした解説書です。各トピックごとに C/C++ 言語の基礎的な内容を学習し、Introduction to Programming の演習問題にチャレンジしていきます。内容は敷居の高いものではなく、プログラミング初学者が取り組む例題からスタートしています。