こんにちは、新人のヤマちゃんです。
本日の学習内容をブログで振り返ります。
・配列
今回は、二次元配列ですこし頭が混乱したので、復習がてらコードを書き残しておきたいと思います。
これから紹介するコード例は■を並べることでコンソールに直角三角形を表示します。
コンソールに数値を入力すると、その数値に応じた高さをもつ直角三角形が2つ表示されます。
以下、コード例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
package 任意のパッケージ名 import java.util.Scanner; public class RightTriangle { public static void main(String[] args) { // TODO 自動生成されたメソッド・スタブ String square = "■"; String space = " "; System.out.print("直角三角形の高さを入力:"); int height = new Scanner(System.in).nextInt(); System.out.println(); // 1つ目の直角三角形 for (int i = 0; i < height; i++) { for (int j = 0; j <= i; j++) { System.out.print(square); } System.out.println(); } System.out.println(); // 2つ目の直角三角形(逆さ) for (int i = 0; i < height; i++) { // 空白を表示 for (int j = 0; j < i; j++) { System.out.print(space); } // ■を表示 for (int k = 0; k < height - i; k++) { // System.out.print(k); System.out.print(square); } System.out.println(); } } } |
以下、5を入力したときの実行例
直角三角形の高さを入力:5
■
■■
■■■
■■■■
■■■■■
■■■■■
■■■■
■■■
■■
■
1つ目の直角三角形はあまり悩まないかもしれませんが、2つ目は全角スペースが入ることも考慮する必要があります。
私は2つ目の直角三角形で全角スペース0のときのこと(つまり三角形の一番上の辺のとき)を考慮せず、コードを書く順番を間違えてしまいました。
3次元以上の多次元配列を使用する例には、ほとんど出会ったことがありませんが、2次元配列はよくあります。
もっとコードを書いて感覚を身につけていきたいと思います。
スプラトゥーン2のメイン性能アップギアを研究しています。
ガチエリアで塗り性能アップは効果があるのか(いまのところ勝率5割)。