Upgrade to Pro — share decks privately, control downloads, hide ads and more …

基礎情報処理演習 (3)PADその2

Sponsored · SiteGround - Reliable hosting with speed, security, and support you can count on.

基礎情報処理演習 (3)PADその2

Avatar for 自然言語処理研究室

自然言語処理研究室

September 27, 2013

More Decks by 自然言語処理研究室

Other Decks in Programming

Transcript

  1. 配列 配列とは一列に並んだ「箱」である。 • 箱の一つ一つは変数と同じ働きをする。 • それぞれの箱には数字を一つだけ入れることができる。 • 配列も、必要なだけ作ってよい。 配列の呼び方 •

    配列全体で一つの名前をつける。 • 個々の箱(要素)には、配列の何番目という呼び方 をする。ただし、0番目から数えるところが違う。 長岡技術科学大学 電気系 基礎情報処理演習 2
  2. 繰り返し(範囲) 範囲を指定した繰り返しを行う。例えば、 (a) 回数が決まっている場合(例:10回何かしたい) (b) 変数の値を変動させたい場合(例: p を20~40にしたい) このような場合に使う。 ここで、(a)

    のように単に10回何かしたい場合も、変数を 変化させることで繰り返しを行う。例えば、 変数 w (変数名は何でもいい) を 1~10 (101~110でも何でもいい)に変化させる という操作で繰り返しを行う。 長岡技術科学大学 電気系 基礎情報処理演習 4
  3. a ← 1 ~ 10 "こんにちは" どの変数を (変数名は何でもよい) いくつからいくつまで 減少方向(例:10~1)にはできない

    何をする (処理は一つとは限ら ない。複数ある場合は 下に続ける) 長岡技術科学大学 電気系 基礎情報処理演習 5 書き方(例1)
  4. a ← 1 ~ 10 変数の値を使って何かしたい場合 繰り返し変数 a の値を 表示させている

    長岡技術科学大学 電気系 基礎情報処理演習 7 書き方(例3) "a回目の数字は p です!" p
  5. i ← 1 ~ 5 S ← S + i

    S ← 0 S S を初期化 i を 1,2,3,4,5で繰り返して S に S+i を代入 S を出力 長岡技術科学大学 電気系 基礎情報処理演習 8 書き方(例4)
  6. 繰り返し(前判定) 繰り返し(後判定) 長岡技術科学大学 電気系 基礎情報処理演習 9 どちらも、ある条件を満たす間はずっと繰り返す。 繰り返す回数を指定するのではなく、 それ以外の変数の値(例: k

    が 0 かどうか)によって 繰り返しを続けるかどうかを決める。 これを繰り返し1回ごとに毎回判断する。 前判定と後判定は非常によく似ているが 使われ方が少し違う。次のスライドを参照。
  7. a > 0 "あと a 回" (動作説明) a ← 10

    a > 0 をチェックしてOK "あと10 回" a が 9 になる(a ← a – 1) a > 0 をチェックしてOK "あと9 回" a が 8 になる(a ← a – 1) … a > 0 をチェックしてOK "あと1 回" a が 0 になる(a ← a – 1) a > 0 をチェックしてNG (プログラム終了) 長岡技術科学大学 電気系 基礎情報処理演習 10 書き方(例1:カウントダウン) a ← a - 1 a ← 10
  8. a > 4 a > 4 長岡技術科学大学 電気系 基礎情報処理演習 11

    まず a > 4 をチェックして、正しければ右の処理を実行する。 条件によっては、右の処理が1回も実行されない。 まず右の処理を1回実行し、その後 a > 4 をチェックする。 どんな条件でも右の処理が最低1回は実行される。 前判定と後判定の違い どちらがいいという問題ではなく、場合によって使い分ける。
  9. i < 5 S ← S + i S ←

    0 S i ← i + 1 i < 5 i 継続条件 (もしこうなら右の処理を行う) ① ② 長岡技術科学大学 電気系 基礎情報処理演習 12 書き方(例2)
  10. i < 5 S ← S + i S ←

    0 S i ← i + 1 i < 5 i ① ② 条件のチェックよりも 処理を先に行う 長岡技術科学大学 電気系 基礎情報処理演習 13 書き方(例3) 例2と例3は同じ動作をしますか? それとも何か違いが出てきますか?