2019.01.03

Javaプログラミング

九九(くく)の表を作る

九九(くく)の表は、1から9までの数字を互いに掛け合わせた数を一覧表にまとめたものです。1×1=1(いんいちがいち)から始まり、9×9=81(くくはちじゅういち)で終わります。

ここでは、数字の桁数を揃えない九九の表(上)と、数字の桁を揃える九九の表(下)の作り方を解説しています。

数字の桁を揃えない九九の表

 1 2 3 4 5 6 7 8 9
 2 4 6 8 10 12 14 16 18
 3 6 9 12 15 18 21 24 27
 4 8 12 16 20 24 28 32 36
 5 10 15 20 25 30 35 40 45
 6 12 18 24 30 36 42 48 54
 7 14 21 28 35 42 49 56 63
 8 16 24 32 40 48 56 64 72
 9 18 27 36 45 54 63 72 81

数字の桁を揃えた九九の表

 1 2 3 4 5 6 7 8 9
 2 4 6 8 10 12 14 16 18
 3 6 9 12 15 18 21 24 27
 4 8 12 16 20 24 28 32 36
 5 10 15 20 25 30 35 40 45
 6 12 18 24 30 36 42 48 54
 7 14 21 28 35 42 49 56 63
 8 16 24 32 40 48 56 64 72
 9 18 27 36 45 54 63 72 81

Javaソースコード

以下が、九九(くく)の一覧表を表示するJavaソースコードです。

数字の桁を揃えない九九の表を作成するソースコード

MultiTable9_1.java

001
002
003
004
005
006
007
008
009
010
011
012
public class MultiTable9_1 {
	public static void main( String[] args ) {
		// 九九の計算
		for ( int i = 1; i <= 9; i ++ ) {
			for ( int j = 1; j <= 9; j ++ ) {
				System.out.print( " " + i * j );
			}
			// 改行
			System.out.println();
		}
	}
}

MultiTable9_1の出力結果

 1 2 3 4 5 6 7 8 9
 2 4 6 8 10 12 14 16 18
 3 6 9 12 15 18 21 24 27
 4 8 12 16 20 24 28 32 36
 5 10 15 20 25 30 35 40 45
 6 12 18 24 30 36 42 48 54
 7 14 21 28 35 42 49 56 63
 8 16 24 32 40 48 56 64 72
 9 18 27 36 45 54 63 72 81

掛け算の結果が1桁のものが、詰まって出力されます。

数字の桁を揃える九九の表を作成するソースコード

MultiTable9_2.java

001
002
003
004
005
006
007
008
009
010
011
012
013
014
015
016
017
018
019
020
021
022
023
public class MultiTable9_2 {
	public static void main( String[] args ) {
		// 九九の計算
		for ( int i = 1; i <= 9; i ++ ) {
			for ( int j = 1; j <= 9; j ++ ) {
				// mに掛け算の結果を代入
				int m = i * j;

				// ' 'を表示
				System.out.print( " " );

				// 計算結果が1桁のとき、' 'を追加表示
				if ( 10 > m ) 
					System.out.print( " " );

				// 掛け算の結果を表示
				System.out.print( m );
			}
			// 改行
			System.out.println();
		}
	}
}

MultiTable9_2の出力結果

 1 2 3 4 5 6 7 8 9
 2 4 6 8 10 12 14 16 18
 3 6 9 12 15 18 21 24 27
 4 8 12 16 20 24 28 32 36
 5 10 15 20 25 30 35 40 45
 6 12 18 24 30 36 42 48 54
 7 14 21 28 35 42 49 56 63
 8 16 24 32 40 48 56 64 72
 9 18 27 36 45 54 63 72 81

掛け算の結果が桁を揃えて出力されます。

Javaソースコードの解説

ここから、九九の表を表示するJavaソースコードを解説していきます。

数字の桁を揃えないソースコード(MultiTable9_1.java)

004
		for ( int i = 1; i <= 9; i ++ ) {

整数型の変数iを1から9に1つずつ足していくループfor文で作成しています。

005
			for ( int j = 1; j <= 9; j ++ ) {

整数型の変数jを1から9に1つずつ足していくループfor文で作成しています。これは、変数ifor文の中に入っているfor文です。したがって、i=1のときはjは1~9の値をとります。i=2のときもjは1~9の値をとります。さらに、i=9のときもjは1~9の値をとります。

これで、九九に使用する変数iとjの全ての組み合わせが2つのfor文の中でとることができます。

006
				System.out.print( " " + i * j );

変数iとjを掛けた結果を改行なしで表示しています。System.out.print改行しない表示ができます。表示の頭に" "(半角スペース)を付けているのは、文字の区切りを表示するためです。これが無いと数字がくっつくため計算結果が正しく表示されません。

数字の桁を揃えるソースコード(MultiTable9_2.java)

次に、上記のプログラムより綺麗な九九(くく)の一覧表を表示するJavaソースコードを紹介します。

006
007
				// mに掛け算の結果を代入
				int m = i * j;

変数iとjの掛け算の結果を変数mに代入します。

009
010
				// ' 'を表示
				System.out.print( " " );

" "(半角スペース)を改行なしで表示します。これは、ほぼMultiTable9_1.javaと同じ処理です。

012
013
014
				// 計算結果が1桁のとき、' 'を追加表示
				if ( 10 > m ) 
					System.out.print( " " );

掛け算の結果mが、10未満の場合に" "(半角スペース)を改行なしで表示します。この処理で、1桁の計算結果の2桁目を半角スペースで埋めることができ、綺麗に揃った表を作成することができます。

016
017
				// 掛け算の結果を表示
				System.out.print( m );

掛け算の結果mを表示します。

以上です。

次のコンテンツ

掛け算を使わないで九九(くく)の表は作れるの?

2020.05.31

関連コンテンツ

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

2022.09.10

2次元の配列を使った九九(くく)の表の作り方を紹介しています。

2020.01.30

九九の表をコンソール出力する方法を紹介しています。出力にはprintfを利用しています。

2020.03.23

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

2020.03.23

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

2015.11.29

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

2022.07.27

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

2020.03.23

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

2020.03.23

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

2019.09.14

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

2022.10.17

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

2020.03.23

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

2022.12.13

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

2020.03.23

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

2020.03.23

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

2020.03.23

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

2023.03.20

掛け算を使わないで九九(くく)の表は作れるの?

2020.05.31

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

2022.08.03

for文で変数名iがよく使われる理由について説明しています。興味のある方は是非。

2022.08.29

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

2020.03.23

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

2016.03.02

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

2020.03.23

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

2021.02.02

広告