私は、C#とプログラミング全般にスーパーです。私は来月に学校に入る前に、オンラインでいくつかの練習をして、言語の基礎を理解するようにしています。 私はスーパーシンプルなプログラムを書いています。なぜそれが何をしているのか理解できず、どこでも答えを見つけることができませんでした。ここにコードがあります。ループをスキップするための行
int i, j, rows;
Console.Write("\n\n");
Console.Write("Display the pattern like right angle triangle which repeat a number in a row:\n");
Console.Write("-------------------------------------------------------------------------------");
Console.Write("\n\n");
Console.Write("Input number of rows : ");
rows = Convert.ToInt32(Console.ReadLine());
for (i = 1; i <= rows; i++)
{
for (j = 1; j <= i; j++)
Console.Write("{0}", i);
Console.Write("\n");
}
このプログラムはすべて、同じ番号の単純なピラミッドであると想定されています。
私の質問は、ループする第二に、それはi
を書き込むですが、それは代わりに、ループの最後の実行が終了するまで\n
を書くのj++
とj<=
を再評価します。なぜ私は理解できないのですか?プログラムは動作しますが、私はなぜそれを理解していません。あなたがそれを壊さない限り、forループは常にその中のすべてを実行するとは思いませんか?
非常に初心者の質問には申し訳ありませんが、そのナットを運転しています!
これはPythonではなく、字下げは何も意味しません。一緒に実行されることを意図しているときは、内側のループの下にある2つの行を中括弧で囲んでループの本体にします。それ以外の場合、ループ本体は1つの文だけです。書かれているように、2番目のConsole.Writeはjではなくiに適用されます。 –
@AlexJolig手元にある問題の要点である間違いを「修正」している質問のコードを決して編集しないでください。 OPは、はっきりとインデントを混乱させ、あなたの「修正」はこのQ&A全体を完全に破ります。 –
@KirkWoll Fine! –