Javaプログラミング学習サイト ゆるゆるプログラミング

2020/03/13 公開

・計算の優先順位

四則演算(+、-、×、÷)には計算の優先順位があるので、計算の順番を間違うと答えが変わります。

計算する順番は、'×'(掛け算)と'÷'(割り算)を先に計算し、その後に'+'(足し算)と'-'(引き算)を計算します。 以下がその計算例です。

 例1)10-3×2の場合、正しい計算結果は4です。(10-3×2 = 10-6 = 4)

 例2)6×8-5×4の場合、計算結果は28です。(6×8-5×4 = 48-20 = 28)

次に、'+'(足し算)と'-'(引き算)の優先順位について考えてみます。

この2つの演算子は、計算する順番に関係なく同じ計算結果になります。

 例3)5+9-3の場合、正しい計算結果は11です。(5+9-3 = 14-3 = 11)

 例4)5-3+9の場合、正しい計算結果は11です。(5-3+9 = 2+9 = 11)

次に、'×'(掛け算)と'÷'(割り算)の優先順位について考えてみます。

この2つの演算子は、式の左の演算子から順番に計算します。

 例5)12÷4×3の場合、正しい計算結果は9です。(12÷4×3 = 3×3 = 9)

 例6)12×3÷4の場合、正しい計算結果は9です。(12×3÷4 = 36÷4 = 9)

 例7)12×3÷6÷2の場合、正しい計算結果は3です。(12×3÷6÷2 = 36÷6÷2 = 6÷2= 3)

例えば、例5)の掛け算部分(4×3)を先に計算すると間違った計算結果になります。

 12÷4×3 = 12÷12 = 1 ← 間違い

プログラム言語で式を記述する場合も、この計算の優先順位のルールに従います。

以下は、四則演算を行うJavaソースプログラムの例です。

OperatorPreceden.java ← クリックしてダウンロードページに移動
001:    public class OperatorPreceden {
002:    	public static void main( String[] args ) {
003:    		int a;
004:    
005:    		//
006:    		a = 10 - 3 * 2;
007:    		System.out.println( "10-3×2=" + a );
008:    
009:    		//
010:    		a = 6 * 8 - 5 * 4;
011:    		System.out.println( "6×8-5×4=" + a );
012:    
013:    		//
014:    		a = 5 + 9 - 3;
015:    		System.out.println( "5+9-3=" + a );
016:    
017:    		//
018:    		a = 5 - 3 + 9;
019:    		System.out.println( "5-3+9=" + a );
020:    
021:    		//
022:    		a = 12 / 4 * 3;
023:    		System.out.println( "12÷4×3=" + a );
024:    
025:    		//
026:    		a = 12 * 3 / 4;
027:    		System.out.println( "12×3÷4="+ a );
028:    
029:    		//
030:    		a = 12 * 3 / 6 / 2;
031:    		System.out.println( "12×3÷6÷2=" + a );
032:    	}
033:    }

OperatorPreceden.javaの出力結果

10-3×2=4
6×8-5×4=28
5+9-3=11
5-3+9=11
12÷4×3=9
12×3÷4=9
12×3÷6÷2=3

優先順位のルールを気にせず計算式を記述したければ、先に計算したい計算部分を括弧で囲んでください。

以下は、上記の2つの例を括弧を付けて記述した例です。

 例1)10-3×2の場合、10-(3*2)

 例7)12×3÷6÷2の場合、((12*3)/6)/2

括弧で囲まれた計算式が優先して計算されるので優先順位のルールを気にする必要がありません。ただし、括弧で囲まれた計算式も優先順位のルールに従います。

■関連コンテンツ

割り算(除算)について 割り算(除算)の注意点など
整数の割り算(除算)について 整数の割り算(除算)
四則演算(足し算/引き算/掛け算/割り算)について-画像

計算結果の表示

足し算(加法)/引き算(減法)/掛け算(乗法)/割り算(除法)の使い方を説明

■新着情報

2022.07.07 外部プログラムの実行 exeファイル実行
2022.07.06 完全数 6=1+2+3

■広告

Topへ