ITエンジニアのプレイングマネージャー化応援サイト

問題4.条件分岐

条件に応じて処理を変える。

そしてその判断を決して間違えない。

これもコンピュータの特徴といってよいでしょう。

ここでは、条件分岐の方法を学びます。

以下のプログラムを作成しなさい。

(チームで、ホワイトボードを使い、方針を決めてからプログラミングを始めること)

なお、乱数を発生させるには、Math.random()を使うこと。

例えば、次のようにすれば0から100までの整数値が取得できる。

int score = (int) (Math.random() * 101);

1.if文

テストの点数が80点以上かどうかを判定したい。

0から100までの乱数を発生させ、80点以上なら「合格です」と表示し、80点未満なら何も表示しないプログラムを作成しなさい。

(出力例1:合格ケース)

点数:91
合格です

(出力例2:不合格ケース)

点数:36

 

2.if..else if文①

テストの点数ごとに評価をしたい。

0から100点までの乱数を発生させ、点数に応じて

「19点以下です」

「点数は20点以上49点以下です」

「点数は50点以上79点以下です」

「点数は80点以上です」

と表示するプログラムを作成しなさい。

 

3.if..else if文②

BMIとは Body Mass Index の略であり次の計算式で求められる。

BMI = [体重(kg)]÷[身長(m)の2乗] ※身長の単位がメートルであることに注意!

日本肥満学会の定めた基準では

18.5未満が「低体重(やせ型)」

18.5以上25未満が「普通体重」

25以上が「肥満」と分類される。

(出力例)

普通体重です

 

4.switch文

おみくじプログラムを作成したい。

おみくじのルール:0から100までの乱数を発生させ、その値を9で割り

余りが0のとき:「大吉です」

余りが1または2のとき:「中吉です」

余りが3または4または5のとき:「小吉です」

余りが6または7のとき:「凶です」

余りが8のとき:「大凶です」

と表示させるプログラムを作成なさい。

ただし、条件分岐にはswitch文を使うこと。

 

5.三項演算子

意思決定システムを作りたい。

あなたが今、意思決定を迫られていることに関して、あなたに代わって意思決定してくれるシステムである。

乱数を発生させて、ちょうど2分の1の確率で「YES」、2分の1の確率で「NO」と表示するプログラムを作成しなさい。

なお、三項演算子を使用すること。

(出力例1)

YES

(出力例2)

NO

 

6.論理演算子

うるう年の判定ができるプログラムを作成したい。

2020年から3000年までの、うるう年を表示させその数を表示しなさい。

なお、うるう年とは、1年を366日とする年のことである。

また、うるう年の判定は以下の記述を参考にすること。

  1. 4の倍数の年は閏年とする。
  2. ただし100の倍数の年は閏年にしない
  3. なお特別に400の倍数の年は閏年にする

論理演算子を使用すること。

(出力例1)

西暦2100年はうるう年ではありません。

(出力例2)

西暦2400年はうるう年です。

※これはグレゴリオ暦では1太陽年を365.2425日として暦を作っているためである。

このデータを基礎にすれば閏年のない暦の400年間は実際より97日(=0.2425×400)短くなってしまうので、それを先のやり方で補正している。

「寄り道の多い数学」(大沢 健夫著)より
 

 

7.結果の予想①

以下のプログラムを実行したら何が出力されるか?また、それはなぜか説明しなさい。

 

8.結果の予想②

以下のプログラムを実行したら何が出力されるか?また、それはなぜか説明しなさい。

 

9.結果の予想③

以下のプログラムはある新入社員が作成した上記2.のプログラムの内容である。

論理エラーを見つけ、指摘し、修正しなさい。

 

10.オリジナル問題作成

将来の後輩のために良い問題が出来たら教えてください。

以上。

 

JavaSEの問題集トップページに戻る

新入社員研修ポータル

ZOOMを使った遠隔研修メニュー(PDFが開きます)

ZOOMを使った遠隔研修

新人エンジニアのためのJavaタイピングゲーム

新人プログラマのためのプログラミング動画

YouTubeチャンネル

新入社員研修ポータル

PAGETOP
Copyright © Say Consulting Group, Inc. All Rights Reserved.