問題3:条件分岐

この問題を解くためには…
 → 基本編第3日目参照

prob3-1.(難易度:★)

キーボードから整数値を入力させ、5以上ならば、”5以上です”と表示するプログラムを作りなさい。

prob3-2.(難易度:★)

キーボードから整数値を入力させ、その値が1でなければ”1ではありません”と表示するプログラムを作りなさい。

prob3-3.(難易度:★)

キーボードから整数値を入力させ、50未満ならば、”50未満です”と表示するプログラムを作りなさい。

prob3-4.(難易度:★)

キーボードから整数値を入力させ、値が10以下か、90以上なら、”10以下か90以上の値です”と表示するプログラムを作りなさい。

prob3-5.(難易度:★)

キーボードから整数値を入力させ、値が20以上80未満であれば、”20以上80未満です”と表示するプログラムを作りなさい。

prob3-6.(難易度:★)

以下のプログラムは、1から6までの乱数(でたらめな数)を発生させて、表示させるプログラムです。

prob3-6:main.c
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
 
int main(void){
    int n;
    srand((unsigned)time(NULL));
	n = rand() % 6 + 1;
	printf("数値:%d¥n",n);
}
実行結果
数値:5   ← 実行ごとに1から6からの数値が出る

このプログラムをに3以上の数値が出た場合、「3以上です」と表示するプログラムを作りなさい。

期待される実行結果1(3以上の値の場合)
数値:4
3以上です。   ← 3以上の値の場合出る
期待される実行結果1(3未満の値の場合)
数値:1   ← 3未満なら何も出ない
※参考1:乱数の初期化(乱数を発生させる前に、一度実行する。
srand(整数)
※参考2:1からnまでの乱数を発生させる処理
rand() % n + 1

prob3-7.(難易度:★)

1から10までの乱数を発生させて表示し、5以上ならば、”5以上です”と表示し、そうでなければ、”5未満です”と表示するプログラムを作りなさい。

prob3-8.(難易度:★)

1から10までの乱数を発生させて表示し、その値が1でなければ”1ではありません”と表示し、1であれば、”1です。”と表示するプログラムを作りなさい。

prob3-9.(難易度:★)

1から100までの乱数を発生させて表示し、50未満ならば、”50未満です”とそうでなければ、”50以上です”と表示するプログラムを作りなさい。

prob3-10.(難易度:★)

1から100までの乱数を発生させて表示し、値が10以下か、90以上なら、”10以下か90以上の値です”と表示し、そうでなければ、”10より大きく90未満です”と表示するプログラムを作りなさい。

prob3-11.(難易度:★)

1から100までの乱数を発生させ、値が20以上80未満であれば、”20以上80未満です”と表示し、そうでなければ、”20未満か、80以上です”と表示するプログラムを作りなさい。

prob3-12.(難易度:★)

-10から10までの乱数を発生させて表示し、”負の値です”と表示し、正の値であれば、”正の値です”と表示し、そうでなければ、”0です”と表示するプログラムを作りなさい。

prob3-13.(難易度:★)

1から3の乱数を発生させ、1なら、”グー”、2なら、”パー”3なら”チョキ”と表示するプログラムを作りなさい。

prob3-14.(難易度:★)

1から10までの二つの乱数を発生させ、それぞれa,bという変数に代入して表示し、aのほうが大きければ、”aのほうが大きいです。”と表示し、bのほうが大きければ”bのほうが大きいです。”と表示し、そうでなければ、”等しいです”と表示するプログラムを作りなさい。

prob3-15.(難易度:★★)

1から100までの数値を乱数で発生させて表示し、以下の処理を行いなさい。

  1. 80点以上なら”優”と表示。
  2. 80点未満、70点以上なら、”良”と表示。
  3. 70点未満、60点以上なら、”可”と表示。
  4. 60点未満なら、”不可”と表示。
期待される実行結果の例
点数:79


prob3-16.(難易度:★★)

1から100までの数値を乱数で発生させて表示し、以下の処理をしなさい。

  1. ①2の倍数であるなら、”2の倍数です。”と表示
  2. ②3の倍数であるなら、”3の倍数です。”と表示
  3. ③ただし、2の倍数でもあり、3の倍数でもある場合は、”2と3の公倍数です。”と表示。
期待される実行結果の例1(2の倍数の場合
4

2の倍数です。
期待される実行結果の例1(3の倍数の場合
9

3の倍数です。
期待される実行結果の例1(2の倍数でもあり、3の倍数でもある場合)
12

2と3の公倍数です。

prob3-17.(難易度:★★)

1から100までの数値を乱数で発生させ、以下の処理をしなさい。

  1. 50以下の場合”50以下です。”と表示。
  2. 偶数の場合、”偶数です。”と表示。
  3. ただし、50以下でかつ偶数の場合、”50以下の偶数です。”と表示。
期待される実行結果の例1(50以下の整数の場合)
49

50以下です。
期待される実行結果の例2(50より大きい偶数の場合)
88

偶数です。
期待される実行結果の例3(50以下の偶数の場合)
28

50以下の偶数です。

prob3-18.(難易度:★★)

乱数で、-10から35までの乱数を発生させ、”摂氏○○度”(○○が、発生した乱数)と表示させ、その値により、以下のように表示しなさい。

  1. 30度以上の場合は、”真夏日です。”と表示。
  2. 25度以上、30度未満の場合”夏日です。”と表示。
  3. 0度未満の場合、”真冬日です。”と表示。
期待される実行結果の例1(30度以上の場合)
摂氏34度

真夏日です。
期待される実行結果の例2(25度以上、30度未満の場合)
摂氏27度

夏日です。
期待される実行結果の例3(0度未満の場合)
摂氏12度

prob3-19.(難易度:★★)

ある年が、閏年かどうかを判定するプログラムを作りなさい。閏年とは

  1. 4で割り切れる
  2. ただし、100で割り切れる場合は、閏年にはしない。
  3. 例外として、400で割り切れる場合は、閏年とする。

を満たす年である。キーボードから、ユーザーに西暦を入力させ、その年が閏年なら「閏年です」、そうでないなら、「閏年ではありません」と表示するように作りなさい。