『C/C++プログラミング入門 – はじめてのプログラミング』ではごく簡単なhello,worldを表示するだけのプログラムを作成した。今回の記事では簡単な計算の結果を出力するといったことを行ってみよう。
加減乗除
コンピューターは計算機だけあって、C言語およびC++でも計算を行うための記法が存在する。『Javaプログラミング入門 – 計算を行う』を以前読まれた型はご存知かとは思うが、C言語およびC++では計算記号は以下のようになる。
計算の種類 | 算数・数学で書いた記号 | C/C++で使う記号 |
---|---|---|
加算(足し算) | + | + |
減算(引き算) | − | – |
乗算(掛け算) | × | * |
除算(割り算) | ÷ | / |
剰余(割り算の余り) | % |
サンプルコード
上記を踏まえて、サンプルコードを記述する。
C言語の場合
#include <stdio.h>
#include <stdlib.h>
int main() {
printf("足し算3+5の結果は%dです。\n", 3 + 5);
printf("引き算7−3の結果は%dです。\n", 7 - 3);
printf("掛け算3×5の結果は%dです。\n", 3 * 5);
printf("割り算5÷2の結果は%dです。\n", 5 / 2);
printf("割り算5÷2の余りは%dです。\n", 5 % 2);
return EXIT_SUCCESS;
}
C++の場合
#include <iostream>
#include <cstdlib>
int main() {
std::cout << "足し算3+5の結果は" << 3 + 5 << "です。" << std::endl;
std::cout << "引き算7−3の結果は" << 7 - 3 << "です。" << std::endl;
std::cout << "掛け算3×5の結果は" << 3 * 5 << "です。" << std::endl;
std::cout << "割り算5÷2の結果は" << 5 / 2 << "です。" << std::endl;
std::cout << "割り算5÷2の余りは" << 5 % 2 << "です。" << std::endl;
return EXIT_SUCCESS;
}
出力
足し算3+5の結果は8です。
引き算7−3の結果は4です。
掛け算3×5の結果は15です。
割り算5÷2の結果は2です。
割り算5÷2の余りは1です。
解説
割り算以外の整数の計算は一般的な算数や数学と一緒のため割愛する。整数の割り算の場合、割り切れない数の場合、切り捨てで計算されるので要注意。四捨五入や切り上げで行いたい場合は別途計算が必要になる。
以下、C言語およびC++特有の解説である。
(C)printf
ここでは計算結果を表示するためにprintfを仕様している。printfでは一定のフォーマットに従った文字列を出力する関数で、最初の引数で書式を持った文字列、ここでは「足し算3+5の結果は%dです。」がそれにあたるが、そのうち、%dの部分が任意の整数を意味する。
この部分は第二整数以降に関連付けられ、ここでは3 + 5の結果などが先ほどの%dと置き換えられる形となる。
いずれの書式も複数あった場合、それぞれ左から置き換えられる。
詳細についてはWikipediaのページなどを参考にすると良い。
(C++)std::cout
C言語ではprintfを使ったが、C++ではそれの代わりにstd::coutを使用した。std::coutでは出力したい文字列や数字などを<<の後に記述することによって出力できるようになる。ここではまず、「足し算3+5の結果は」の後に「3+5の結果(つまり8)」、続いて「です。」、最後に改行が出力される。
最後に
これでC言語やC++での計算の仕方の基礎の基礎はできるようになった。ただ、これだけだと複雑な計算は難しいので、次回はもう少し複雑な計算の説明を行いたい。
ウェブマスター。本ブログでITを中心にいろいろな情報や意見などを提供しています。主にスマートフォン向けアプリやウェブアプリの開発を携わっています。ご用の方はコメントかコンタクトフォームにて。