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

2021/02/10 公開

・三角形を描く(テキスト版) その2

テキストで塗りつぶし直角三角形を表現する方法を紹介します。ここで紹介するプログラムで出力するテキストの表示は、黒色は'●'、白色は' '(全角スペース)で表現します。

テキストで三角形を表現

以下は、塗りつぶし直角三角形をテキストで表現するJavaソースコードです。

TextTriangle2.java ← クリックしてダウンロードページに移動
001:    public class TextTriangle2 {
002:    	public static void main( String[] args ) {
003:    		// サイズ
004:    		int size = 10;
005:    
006:    		// 三角形テキストの作成
007:    		for ( int i = 0; i < size; i++ ) {
008:    			int j;
009:    
010:    			// 空白を出力
011:    			for ( j = 0; j < i; j++ )
012:    				System.out.print( " " );
013:    			// ●を出力
014:    			for ( j = i; j < size; j++ )
015:    				System.out.print( "●" );
016:    			// 改行
017:    			System.out.println();
018:    		}
019:    	}
020:    }

TextTriangle2の実行例

java TextTriangle2

出力結果

テキスト三角形描画(底辺が下)

底辺10、高さ10の塗り潰し直角三角形です。

ここからは、このJavaソースコードを上から順番に解説していきます。

001:    public class TextTriangle2 {

クラス名を、TextTriangle2としています。

002:    	public static void main( String[] args ) {

このmainメソッドからプログラムを実行します。

003:    		// サイズ
004:    		int size = 10;

サイズ(底辺と高さ)を変数sizeに代入しています。

006:    		// 三角形テキストの作成
007:    		for ( int i = 0; i < size; i++ ) {

for文int型変数iを0から(size-1)まで1ずつ増やすループを作っています。0~(size-1)のsize回繰り返します。

for文条件式i < sizeとしているので変数iがsize以上になるとループを抜けます。

008:    			int j;
009:    
010:    			// 空白を出力
011:    			for ( j = 0; j < i; j++ )
012:    				System.out.print( " " );
013:    			// ●を出力
014:    			for ( j = i; j < size; j++ )
015:    				System.out.print( "●" );

1行分の空白' 'と'●'を出力しています。

変数i=0の場合' 'を0個と'●'を10個、i=1の場合' 'を1個と'●'を9個、i=2の場合' 'を2個と'●'を8個、i=9の場合' 'を9個と'●'を1個出力するようにfor文を作っています。

016:    			// 改行
017:    			System.out.println();

1行の出力が終了したら、println()改行しています。

以上です。

■関連コンテンツ

値のコンソール表示 print()、println()とは?
Javaの変数 Javaで扱う変数について解説
繰り返し処理に使用するfor文について解説-画像

for文

繰り返し処理に使用するfor文をJavaのソースコードを使って説明しています。

for文の中にfor文-画像

多重ループ

for文などのループの中にループをいれたプログラムの構造、多重ループについて説明しています。

三角形を描く(テキスト版) その1-画像

三角形を描く(テキスト版) その1

for文を使ってテキストの直角三角形を表現する方法を解説しています。底辺が下になる直角三角形です。

テキストを円を描く-画像

円を描く(テキスト版)

塗りつぶした円をテキスト文字で表現する方法を紹介しています。

■新着情報

2021.06.23 配列の初期値 配列の生成直後の値は?
2021.06.18 変数の初期値 変数に値を代入しないで計算

■広告

Topへ