C初級:四則演算

C言語初級カテゴリのロゴ画像C言語初級
スポンサーリンク

サンプルプログラム 03calc.c

/* 03calc.c 計算 */
#include <stdio.h>
int main(void)
{
	printf("4 + 3 = %d\n", 4+3);
	printf("16の2乗は、%d\n", 16 * 16);
	printf("5 - 3 * 2 = %d\n", 5 - 3 * 2);
	printf("(5-3) * 2 = %d\n", (5-3) * 2);
	printf("10割る3は、%d\n", 10 / 3);
	printf("10割る3は、%f\n", 10.0 / 3.0);
	printf("10を3で割った余りは、%d\n", 10 % 3);
	
	return 0;
}

コンピュータはつまるところ計算機です。
何の計算をしてきたかと言えば、ミサイルの弾道計算です。
戦争のおかげ(言い方は良くないですが)でコンピュータやインターネットは発達してきました。
コンピュータが人間より優れている部分は、「物事を考える力」ではなく「高速で計算できる力」にあります。

上記のプログラムでは、C言語で四則演算を行っています。
+、-などの計算に使う記号は、演算子と呼びます。
ふだん私たちが使っている記号と違うものもありますので、主なものを表にまとめました。

演算子読み方使い方意味結果
+プラス10 + 3足し算、10足す313
ハイフン、マイナス10 – 3引き算、10引く37
*アスタリスク10 * 3掛け算、10掛ける330
/スラッシュ10 / 3割り算、10割る33(整数型の場合)
%パーセント10 % 3余り、10を3で割った余り1

割り算の結果に関して「整数型の場合」とあります。
C言語では、整数部分だけの計算を行うか、あるいは実数部分(小数点以下の部分)までの計算を行うかをあらかじめ指定する必要があります。

上記のサンプルプログラムでは、

整数型の場合

printf("10割る3は、%d\n", 10 / 3);

実数型の場合

printf("10割る3は、%f\n", 10.0 / 3.0);

で結果が違ってきます。
整数型は、小数点以下を扱えない型なので通常の計算で「3.3333…」となっても結果は「3」です。

03cals.cの実行結果

4 + 3 = 7
16の2乗は、256
5 - 3 * 2 = -1
(5-3) * 2 = 4
10割る3は、3
10割る3は、3.333333
10を3で割った余りは、1

実数型では、3.333333と表示されていますが、循環小数にはなりません。
コンピュータが扱う数値に無限という概念はないからです。
人間でも計算できないことはコンピュータにも無理と考えた方が自然です。

小学校で習ったように括弧を使って計算の優先順位を決めることも可能です。

printf("(5-3) * 2 = %d\n", (5-3) * 2);

この場合、5-3が最初に計算された後に2を掛けます。
掛け算、割り算の方が足し算、引き算より優先順位が高いという部分も小学校で習ったものと同じです。

もし

printf("5+3*2 = %d\n", 5+3*2);

であれば、3掛ける2を計算した後に5を足すので結果は11と表示されます。

スポンサーリンク
C言語初級
スポンサーリンク
dennouをフォローする
電脳産物

コメント

  1. […] 前回の四則演算の回でも書きましたが、C言語には整数型と実数型という型が存在します。 […]