プログラミング基礎 II

第六回: 条件と枝分かれ、(不) 等式、条件の組み合わせ

Martin J. Dürst

duerst@it.aoyama.ac.jp

O 棟 529号室

テュールスト マーティン ヤコブ

http://www.sw.it.aoyama.ac.jp/2005/Programming%20Basics%20II/lecture6.html

AGU

© 2005 Martin J. Dürst 青山学院大学

今週の目的

先週提出された宿題について

主な問題点:

先週の演習題

枝分かれとは

今までのプログラムの特徴:

枝分かれの特徴:

枝分かれの例

二つの変数 ab の大きい方の値を変数 c に代入する

if (a >= b) {
    c = a;
}
else {
    c = b;
}

枝分かれの記述: if

if (/* 条件 */) {
    /* 条件が真の場合に実行する文 */
}

枝分かれの記述: if-else

if (/* 条件 */) {
    /* 条件が真の場合に実行する文 */
}
else {
    /* 条件が偽の場合に実行する文 */
}

条件の書き方: 単純な条件

参考書 8.3 節 (pp. 97-98)

条件の組み合わせ

参考書 8.4 節 (pp. 98-102)

文字列の比較

プログラムの記述 本来したい比較
strcmp(s1, s2) > 0 s1 > s2
strcmp(s1, s2) >= 0 s1s2
strcmp(s1, s2) == 0 s1 == s2
strcmp(s1, s2) != 0 s1s2
strcmp(s1, s2) <= 0 s1s2
strcmp(s1, s2) < 0 s1 < s2

文字列の比較の意味

文字列の比較の例
s1 s2 s1 ? s2
"abc" "def" s1 < s2
"abc" "abc" s1 == s2
"abc" "abcd" s1 < s2
"abc" "abC" s1 > s2
"あおやま" "アオヤマ" s1 < s2
"アオヤマ" "青山" s1 < s2

今週の演習題

  1. 二つの文字列を読み込んで、その二つが同じかどちらが大きいのかを調べるプログラムを作って下さい。
  2. 何日何曜日なのかを入力して、次のルールを使ってその日どのようなゴミを出せるのかを出力するプログラムを作って下さい。
  3. 自分の分野や身の回りの問題で条件文を使った面白いプログラムにして下さい。

提出: 来週の授業 (11月 21日) までに 3 番のプログラムと入出力経過を提出して下さい。

次回のための準備