講義メモ 後半

p.115 for文

・4つあるC#の繰り返し構文の1つで、主に「●回繰り返す」時に用いると便利な構文。
・書式: for (繰り返し前の実行文; 継続条件; 毎回繰り返しの末尾の実行文) { 繰り返し内容 }
・例:
 int i; //繰り返しのカウンタ用の変数を宣言
 //①iに0を代入し、②iが5未満なら、③iの表示とインクリメントを繰り返す
 for (i = 0; i < 5; i++) { //繰り返し開始
  Console.WriteLine(i);  //繰り返し内容
 } //繰り返しここまで
・繰り返し内容が1行の場合「{}」は省略可能だが、省略が推奨されないことがある

アレンジ演習:p.115 for01.cs

・省略されている{}を記述しよう
・継続条件を「5未満」から「4以下」にしよう

作成例

//アレンジ演習:p.115 for01.cs
using System;
class for01
{
    public static void Main()
    {
        int i; //繰り返しのカウンタとして用いる変数
        //①iに0を代入し、②iが以下なら、③iの表示とインクリメントを繰返す
        for (i = 0; i <= 4; i++) { //iを0から4まで1加算しながら繰返す
            Console.WriteLine("i = {0}", i);
        }
    }
}

p.116(デクリメントによるカウントダウンのfor文)

・for文の第3要素をデクリメントにすると、カウントダウンのfor文を記述できる

アレンジ演習:p.116 for02.cs

・省略されている{}を記述しよう

作成例

//アレンジ演習:p.116 for02.cs
using System;
class for02
{
    public static void Main()
    {
        int i; //繰り返しのカウンタとして用いる変数
        //①iに4を代入し、②iが0以上なら、③iの表示とデクリメントを繰返す
        for (i = 4; i >= 0; i--) { 
            Console.WriteLine("i = {0}", i);
        }
    }
}

p.117 forループからの脱出

・for文の3つの要素は全て省略可能(セミコロン2個は省略不可)
 例: for(i = 0; i < 5;){…; i++;}
 例: i = 0; for(; i < 5;){…; i++;}
・ただし、2つめの要素である継続条件を省略すると無限ループになる
 例: for(;;){…}
・無限ループを終わらせたい場合や、継続条件以外の理由でループを終わらせたい場合、breakを実行すると良い
・よって、継続条件が複雑な場合や、コンソールからの入力によってループを終わらせたい場合などは、継続条件ではなく、
 breakをif文で囲って用いると良い
 例: 
 i = 0; //カウンタに0を代入
 for(;;){ //無限ループ開始
  if(i >= 5) //カウンタが5以上になったら
   break; //繰り返し終了
  }
  i++; //カウンタに1加算
 }
・なお、繰返し構文の中のif文などでは、その対象が1行であっても{}の省略を推奨しないことがある。

アレンジ演習:p.117 for03.cs

・繰返し構文の中のif文の{}の省略をやめよう

作成例

//アレンジ演習:p.117 for03.cs
using System;
class for03
{
    public static void Main()
    {
        int i = 0;
        for ( ; ; ) { //無限ループ!!
            Console.WriteLine("i = {0}", i);
            i++; // WriteLineメソッドが実行されたらiを1増やす
            if (i >= 5) { // iが5以上になったらbreak文で脱出
                break;
            }
        }
    }
}

提出:アレンジ演習:p.117 for03.cs

・4,3,2,1,0 とカウントダウンするように書き換えよう

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です