この章ではif文で星座の判定のプログラムを作成します。
scanfでユーザーに誕生月と誕生日を入力させて、それに対して星座を出力させるプログラムです。
少し長いプログラムですが、if文が連なっているだけです。 ここで使っているif文は入れ子になっています。
つまり、if文の中にif文が入っている構造になっています。
この例では初めにmonthの数値が1から12までの、どの数値なのかをから以下のif文で確認します。
次に2つ目のif文でdayの数値により星座の分別を行います。
星座が2つあるので、条件式はという構文で書きます。
例えばmonthが1であれば1月は山羊座か水瓶座なので、dayが18であれば山羊座になります。dayの数値が31を超えていればが実行されます。 結果の一例は以下の通りです。星座の日決めには説があり、上のif文では必ずしも自身の星座が出力されない可能性がありますので、その辺の誤差はご勘弁ください(星座の切り換わりの日が説により1日ずれています)。
カテゴリー