コンソールから正数値を入力させた後、forループを用いて、その数だけ■マークを表示するプログラムを作りなさい。
...
ループの条件のところで初めに宣言しておいた整数値と▪️の数とをどうやって条件に組み込むのかがわかりません。
やり方は色々あります。いくつか例として示します。コード中の(1)が一般的でしょうか。(2)は、char
の配列に収めたあと、一挙に出力、(3)は文字列を作成するのにStringBuilder
と言うクラスを利用した例です。
C#
1using System;
2using System.Text;
3
4namespace ConApp1
5{
6 class Program
7 {
8 static void Main(string[] args)
9 {
10 Console.Write("■の数を入力>");
11 // 1行入力
12 string line = Console.ReadLine();
13
14 // 入力された行の数文字列を整数に
15 int n = int.Parse(line.Trim());
16
17 // やり方色々 (1)
18 for (int i = 0; i < n; i++)
19 {
20 Console.Write("■");
21 }
22 Console.WriteLine();
23
24 // やり方色々 (2)
25 char[] buf = new char[n];
26 for (int i = 0; i < n; i++)
27 {
28 buf[i] = '■';
29 }
30 Console.WriteLine(new String(buf));
31
32 // やり方色々 (3)
33 StringBuilder sb = new StringBuilder();
34 for (int i = 0; i < n; i++)
35 {
36 sb.Append('■');
37 }
38 sb.Append('\n');
39 Console.Write(sb.ToString());
40 }
41 }
42}
これら3つのfor
ループではすべて同じ結果を出力します。
CMD
1C:\project\ConApp1\bin\Debug>ConApp1.exe
2■の数を入力>5
3■■■■■
4■■■■■
5■■■■■
サイトにあった問題で次の問題ができませんでした。
どのようなサイトをご覧になったかは分かりませんが、プログラミング言語を勉強するには、最初は良い書籍や公式のガイドを丁寧に読んで習得することが結局近道ですので、目を通しておくことを強くお勧めします。基本の勉強とともに、そういった問題を並行してやっていくことは良いことだと思います。がんばってください。