情報科学概論(1年生)
2004.12.13

Back to index page



  1. 本日の作業内容

  2. 出席確認

    電子メールで出席確認をします.宛先など以下の情報を用いてメールを作成し, 出席申告してください.なお,キーワードは授業中に紹介します.

    提出形式

    宛先 justice@mag.shimane-u.ac.jp
    件名 AttendA12-13_ruby_s0440**
    AttendB12-13_ruby_s0440**
    (Aクラス)
    (Bクラス)
    本文 学生番号
    氏名
    キーワード
     
    (改行)
    (改行)
    キーワードは授業中に紹介
    注意 「件名」および「添付書類名」の**をそのままにしないで,必ず自分の学生番号 に修正して下さい.また,ABクラス別は指示にしたがって下さい.

  3. インデント見本

    最近複雑な処理が徐々に加わってきたために,インデント(字下げ)に対する注意 が散漫になってきているようです.もう一度きちんとした字下げを確認して下さ い.次のスクリプトは見本です.

    n = 10
    count = 1
    
    for i in 0..n-8
      m = 1
      l = 2
      for j in 1..l
        if j == 1
          printf "%2d行目\n", count
        else
          count += 1
          printf "%2d行目\n", count
        end
      end
    
      for k in m..l
        count += 1
        printf "%2d行目\n", count
      end
      count += 1
    end
    
    printf "これでおしまい\n"
    

  4. while ループ

  5. 応用

    while ループの醍醐味である不規則な増分の例を 次の例で試してみましょう.どのような処理を行うものかは,先ずはスクリプト を眺めて考えて下さい.その後で実行して確認して下さい.

    num = rand(10000) + 1
    printf "Cross sum of the number %d becomes ", num
    sum = 0
    
    while num > 0
      sum += num % 10
      num /= 10
    end
    
    printf "%d.\n", sum
    

    このスクリプトの動作に関しては,後程フローチャートと併せて説明するように しますので,アナウンスに注意して下さい.

  6. 演習

    これまでに実習で行った for ループを while ループに変更 してみましょう.次の例で試してみて下さい.

    次は,増分の自由度を活かした例を考えてみましょう.

  7. 小テスト

    授業の終わりに小テストを実施します.アナウンスに注意していて下さい.

    Aクラス小テスト
    Bクラス小テスト

  8. 宿題

    宿題に関する案内が授業の終わりに紹介されます.注意にしたがって提出してく ださい.

    Aクラス宿題
    Bクラス宿題

  9. 本日の用語

    • while

      条件式が真の間繰り返しを行う形式の処理.

    • 増分

      条件式が比較演算を含む際に,カウンタ変数を変化させることが多く利用される が,その変化量.カウンタ変数を使わないで,不規則に変化させることも可能で, その際には増分としてではなく,より自由な処理を行える.


目次ページに戻る