計算の基本

6.1 計算の基本

 この章では、プログラミングにおける「計算」について説明していきます。まず始めに、最も基本的な四則演算についてみていきましょう。四則演算とは足し算、引き算、掛け算、割り算の総称です。「加減乗除」とも言います。どれも算数で習った簡単なものばかりです。

6.1.1 算術演算子と四則演算

 加減乗除(+-×÷)の四則演算は算数で勉強しましたが、プログラミングの世界で四則演算に使われる記号の一部は算数とは異なり、また、これまであまり使わなかったような記号も使います。
 プログラムの演算に使用する記号のことを算術演算子と呼びますが、プログラミングで使用するもっとも基本的な算術演算子を下の表 6.1.1に示しています。

表 6.1.1 : 算術演算子

 乗算(掛け算)と除算(割り算)は算数の世界では「×」「÷」で表現しますが、プログラミングでは「*」と「/」を使用します。また、余りを求める場合は「%」演算子を使います。

6.1.2 算術演算子の優先順位

 算術演算子を使った四則演算にも計算の優先順位があります。優先順位の考え方は、算数の場合と同じです。

6.1.3 算術演算子を使用した四則演算を行うプログラム

 算術演算子を用いて、値が代入された変数同士の四則演算を行ってみましょう。

ソース・フォルダ:/Desktop/Python入門テキスト
ファイル名    :第6章.ipynb
アクセスURL   :http://localhost:8888/notebooks/Desktop/Python入門テキスト/第6章.ipynb

➢ 第6章.ipynb/ 6.1.3 算術演算子を使用した四則演算を行うプログラム

	 
	a = 9
	b = 4
	
	print(‘a = ‘, a)
	print(‘b = ‘, b)
	# 足し算
	answer = a + b
	print(‘a + b : ‘, answer)
	
	# 引き算
	answer = a - b
	print(‘a - b :’, answer)
	
	#掛け算
	answer = a * b
	print(‘a * b : ‘, answer)
	
	#割り算
	answer = a / b
	print(‘a / b : ‘, answer)
	
	#余りを求める
	answer = a % b
	print(‘a % b : ‘, answer)
	 
	

実行結果

解説

 2~3行目は、int型の変数aとint型の変数bを宣言し、それぞれの変数に値を代入しています。
   2: a = 9
   3: b = 4

 5、6行目では、変数aと変数bの値を画面に表示させ、代入されている値を確認しています。
   5: print(‘a = ‘, a)
   6: print(‘b = ‘, b)

 8行目では計算結果を管理する変数answerを宣言し、変数a と変数 bの加算結果を代入しています。変数aの値は9、変数bの値は4なので、「a + b」は「9 + 4」と同じ値です。
 9行目で変数answerの値を表示します。変数answerには、9 + 4の結果である13が代入されています。引き算と掛け算も同様に、算術演算子にあった処理が行われます。
   8: answer = a + b
   9: print(‘a + b : ‘, answer)

図 6.1.3.1 : 変数の加算

 足し算や、引き算、掛け算において整数同士の計算であれば、答えは必ず整数ですが、割り算では、互いに割り切れないこともあるので、整数が答えになるとは限りません。
 しかし、プログラミング言語において整数の値(int型)と、小数点以下で表わされる値(float型)ではデータ型が異なってしまいます。
 そのためプログラミング言語によっては、互いに割り切れない整数(int型の値)同士の計算において、小数点以下の値を切り捨て、整数部分だけが取得されます。
 一方、Pythonでは、互いに割り切れない整数同士の割り算でも、小数点以下の値は切り捨てられず、float型として小数点以下の値が取得されます。

 そのため20行目では互いに割り切れない、int型の変数aと、int型の変数bで、割った値を変数answerに代入し、21行目でその値を出力してますが、「9÷4=2.25」の「2.25」がそのまま表示されます。

   20: answer = a / b
   21: print(‘a / b : ‘, answer)

9を4で割ると、その余りは1になります。
   24: answer = a % b
   25: print(‘a % b : ‘, answer)

6.1.4 算術演算子の優先順位を確認するプログラム

 算術演算子を使った四則演算を行い、算術演算子の優先順位を確認してみましょう。四則演算の優先順位は、算数の場合と同じです。

ソース・フォルダ:/Desktop/Python入門テキスト
ファイル名    :第6章.ipynb
アクセスURL   :http://localhost:8888/notebooks/Desktop/Python入門テキスト/第6章.ipynb

➢ 第6章.ipynb/ 6.1.4 算術演算子の優先順位を確認するプログラム

	#計算用の値を管理する変数を宣言し、値を代入
	a = 9
	b = 1
	c = 3
	
	print(‘a = ‘, a)
	
	print(‘b = ‘, b)
	
	print(‘c = ‘, c)
	
	#回答を管理する変数を宣言
	answer = a + b * c
	print(‘a + b * c = ‘, answer)
	
	answer = (a + b) * c
	print(‘(a + b) * c = ‘, answer)
	

実行結果

解説

 2~4行目で、計算に使用するint型の変数を宣言すると同時に値を代入しています。
   2: a = 9
   3: b = 1
   4: c = 3

 13行目で答えを入れるための変数answerを宣言し、加算と乗算の結果を代入しています。演算子の優先順位ルールにより、加算より乗算が先にされるので、変数answerの値は「12」になり、14行目でその値を出力しています。

   13: answer = a + b * c
   14: print(‘a + b * c = ‘, answer)

図 6.1.4.1 : 演算子の優先順位ルールにより、加算より乗算を先に計算する

 16行目では、先ほどの13行目の計算式の加算部分に括弧を付けることにより、乗算より括弧内の加算が先に行われ、変数answerへ代入される値は「30」になり、17行目でその値を出力しています。
   16: answer = (a + b) * c
   17: print(‘(a + b) * c = ‘, answer)

図 6.1.4.1 : 演算子の優先順位ルールにより、加算より乗算を先に計算する


NEXT>> 6.2 インクリメントとデクリメント