2020.03.23

Javaプログラミング

剰余(余り)

剰余(余り)とは、割り算で割り切れずに残った数のことです。

例1)10÷3の場合、3 余り 1です。(10 = 3 x 3 + 1)
例2)8÷5の場合、1 余り 3です。(8 = 5 x 1 + 3)
例3)13÷20の場合、0 余り 13です。(13 = 20 x 0 + 13)
例4)-10÷4の場合、-2 余りは-2です。(-10 = 4 x (-2) - 2 )
例5)-10÷(-4)の場合、2 余り -2です。(-10 = -4 x 2 - 2 )

まず、割り算した結果(整数)と割る数を掛けた値を、割られる数から引いた値が余りです。

例2)の割り算した結果は1で、これを割る数5と掛けると5、これを割られる数8から引くと8-5=3(余り)となります

例4)の割り算した結果は-2で、これを割る数4と掛けると-8、これを割られる数-10から引くと-10-(-8)=-2(余り)となります

Javaでは演算子'%'を使って求めることができます。

演算 演算子
剰余(じょうよ) %

Javaソースコード その1

以下は、'%'を使ったJavaのソースです。

Surplus1.java

001
002
003
004
005
006
007
008
009
010
011
012
013
014
015
016
017
018
019
020
021
022
023
024
public class Surplus1 {
	public static void main( String[] args ) {
		// 変数の定義
		int   a, b, ans;

		// 100を9で割った余り
		a = 100;
		b = 9;
		ans = a % b;
		System.out.println( a + "を" + b + "で割った余り : " + ans );

		// 50を-4で割った余り
		a = 50;
		b = -4;
		ans = a % b;
		System.out.println( a + "を" + b + "で割った余り : " + ans );

		// -20を-3で割った余り
		a = -20;
		b = -3;
		ans = a % b;
		System.out.println( a + "を" + b + "で割った余り : " + ans );
	}
}

実行結果

コンパイル ソースコードが「ANSI」の場合

C:\talavax\javasample>javac -encoding sjis Surplus1.java

コンパイル ソースコードが「UTF-8」の場合

C:\talavax\javasample>javac Surplus1.java

Surplus1を実行

C:\talavax\javasample>java Surplus1

出力結果

100を9で割った余り : 1
50を-4で割った余り : 2
-20を-3で割った余り : -2

aとbをいろいろな値に変更して試してみてください。

1から10までの数字が、コンソール出力されます。

Javaソースコード その2

以下のソースは、for文で0~99の値のループを作り、その値を10で割った余りを表示するものです。余りが9のとき、表示を改行するようにしています。

Surplus2.java

001
002
003
004
005
006
007
008
009
010
011
012
013
014
015
016
public class Surplus2 {
	public static void main( String[] args ) {
		// 変数の定義
		int   i, ans;

		for ( i = 0; i < 100; ++ i ) {
			// iを10で割った余り
			ans = i % 10;
			System.out.print( ans );

			// ans=9の時に改行
			if ( 9 == ans )
				System.out.println();
		}
	}
}

実行結果

コンパイル ソースコードが「ANSI」の場合

C:\talavax\javasample>javac -encoding sjis Surplus2.java

コンパイル ソースコードが「UTF-8」の場合

C:\talavax\javasample>javac Surplus2.java

Surplus2を実行

C:\talavax\javasample>java Surplus2

出力結果

0123456789
0123456789
0123456789
0123456789
0123456789
0123456789
0123456789
0123456789
0123456789
0123456789

'0123456789'が10行表示されます。

Javaソースコード その3

以下は、演算子'%'を使ってdouble型剰余を計算するソースです。

C言語では'%'は整数余り計算にだけ使用できますが、Javaの場合は、実数にも'%'が使用できます。

Surplus3.java

001
002
003
004
005
006
007
008
009
010
011
012
public class Surplus3 {
	public static void main( String[] args ) {
		// 変数の定義
		double a, b, ans;

		// 173.2を20.0で割った余り
		a = 173.2;
		b = 20.0;
		ans = a % b;
		System.out.println( a + "を" + b + "で割った余り : " + ans );
	}
}

実行結果

コンパイル ソースコードが「ANSI」の場合

C:\talavax\javasample>javac -encoding sjis Surplus3.java

コンパイル ソースコードが「UTF-8」の場合

C:\talavax\javasample>javac Surplus3.java

Surplus3を実行

C:\talavax\javasample>java Surplus3

出力結果

173.2を20.0で割った余り : 13.199999999999989

以上です。

関連コンテンツ

Javaの学習に役立つソースコードを多数紹介しています。是非、ご覧ください。

2022.09.10

数学に関係するJavaのメソッドやソースコードなどを紹介しています。

2022.10.25

「Javaソースコード」から実行可能な「オブジェクトコード」に変換する方法をくわしく説明しています。

2020.03.23

Swingパッケージを使って数式のグラフを表示する方法を解説します。サイン(sin)カーブを表示するJavaソースコードを紹介しています。

2019.09.14

画像フォーマット形式・色・大きさ・傾きなどの変更、特定の図形(文字・記号など)を見つけたり、取り出したりする画像処理について詳しく解説。

2015.11.29

基本的な計算である足し算(加法)/引き算(減法)/掛け算(乗法)/割り算(除法)を行うプログラム作成。

2020.03.23

ソースコードの中の「a = a + 1」について説明しています。

2024.01.20

double型のもつ誤差について解説しています。

2016.02.15

1から10の整数値のうち、偶数だけをコンソール出力するJavaのソースコードを紹介しています。for文を使って作成しています。

2022.09.05

1から10の整数値のうち、偶数だけをコンソール出力するJavaのソースコードを紹介しています。while文を使って作成しています。

2022.09.05

1から10の整数値のうち、奇数だけをコンソール出力するJavaのソースコードを紹介しています。for文を使って作成しています。

2022.09.05

1から10の整数値のうち、奇数だけをコンソール出力するJavaのソースコードを紹介しています。while文を使って作成しています。

2022.09.05

日本で使われてきた伝統文様「和柄」について解説しています。

2022.07.27

PCやスマートフォンのディスプレイに表示されている色、プリンターで印刷される色の仕組みについて解説しています。

2020.03.23

繰り返し処理を使ったJavaのソースコードサンプルを紹介しています。

2020.03.23

プログラミング、ITに関する用語をまとめています。

2022.10.17

変数やクラスに格納されている値をコンソール出力する方法は?

2020.03.23

プログラムの最初に実行されるメソッドは?

2022.12.13

プログラミングで使う変数って何?

2020.03.23

Javaのプログラムを書いてみませんか?プログラムの書き方をくわしく説明しています。

2020.03.23

条件式を判断して処理を分岐する方法を詳しく説明しています。

2023.03.20

Javaの演算子'/'を使って割り算を行った結果と注意点などについて説明。

2020.03.23

自然数と整数って何が違う?

2020.03.23

割り算で「割り切れる」、「割り切れない」ってどういうこと?

プログラミング言語とは?種類や特徴について説明しています。

2022.08.03

処理を繰り返すために使用するfor文について解説しています。

2020.03.23

繰り返し処理の作り方を解説しています。

2016.03.02

文字列の途中で改行する方法って?詳しくは、記事を。

2021.02.02

入力した10進数を2進数に変換するプログラムを作ってみませんか?

2016.02.26

2進数の桁を左右のどちらかに指定回数だけずらすビットシフトについて詳しく解説しています。

2016.04.03

繰り返し処理を制御するための機能の1つである「continue」について詳しく解説しています。

2019.10.16

小数で表した時間を、整数の時分秒に変換するプログラムの作り方を解説しています。3.6時間は、何時間何分何秒?

2017.03.02

入力した金額からお札と硬貨の最少枚数を求める方法をソースコードを使って解説しています。

2020.09.03

トランプ(カード)を扱うクラスを紹介しています。

2019.08.05

公約数について解説しています。興味がある方はご覧ください。

2020.07.08

偶数・奇数を判定する方法を詳しく説明しています。興味のある方は、ご覧ください。

2015.11.17

与えられた2つの自然数の最小約数の掛け算を繰り返して最大公約数を求めるJavaソースコードを紹介しています。

2020.03.23

ユークリッドの互除法による最大公約数の求め方を解説しています。Javaのソース付きです。

2020.03.23

整数値の指定した位を求める方法を詳しく解説しています。

2020.03.23

素数を判定するプログラムを作成してみませんか?興味のある方は、ご覧ください。

2016.02.01

市松模様の画像をJavaで作ってきませんか?サンプルソースを使って、作り方を詳しく説明しています。

2019.03.04

黒と白の水平線を交互に描画した画像(ストライプ)を作成する方法を解説しています。ソースコード付きです。

2019.02.26

傾き45°の線の縞模様画像を作成する方法を解説しています。ソースコード付きです。

2019.03.20

黒と白の垂直線を交互に描画した画像(ストライプ)を作成する方法を解説しています。ソースコード付きです。

2019.02.26

黒と白の放射状模様画像を作成する方法を紹介しています。

2019.04.30

素因数分解は、自然数を素数の積(掛け算)で表すことです。この記事では、素因数分解のJavaのソースコードを解説しています。

2022.08.25

1+2+3+ … +Nを計算する公式と、その導き方を掲載しています。

2021.07.03

テキストで表示される市松模様をJavaで作ってきませんか?サンプルソースを使って、作り方を詳しく説明しています。

2019.03.18

テキストで横縞模様を表現するJavaソースコードを紹介しています。

2020.03.23

0から359°のsin(x)、sin(x)、tan(x)の表を作成する方法をソースコードを使って詳しく解説しています。

2022.09.24

広告