演習課題「じゃんけんプログラムを作ろう」
入力エリアに、じゃんけんの手(例:グー,チョキ,パー)が用意してあります。
右のコードエリアのコメントを参考にして、じゃんけんプログラムを作ってください。
じゃんけんの手は、標準入力から読み込んだ文字列をカンマで分割して、そのうち1つをランダムに出力します。
このとき、カンマで分割した配列をそのまま出力して、それからじゃんけんの結果を出力してください。
プログラムを実行して、正しく出力されれば演習課題クリアです!
期待する出力値
["グー", "チョキ", "パー"]
グー
#09:配列を使ったランダムくじ
ここでは、配列を使って、RPGの戦闘シーンを表現したメッセージを表示するプログラムを作ります。
- `Math.random()`で0〜1未満のランダムな数が生成できる
- `Math.floor()`で小数点以下切り捨て
process.stdin.resume();
process.stdin.setEncoding('utf8');
var input_string = "";
var reader = require('readline').createInterface({
input: process.stdin,
output: process.stdout
});
reader.on('line', (line) => {
input_string = line;
});
reader.on('close', () => {
var values = input_string.split(",");
for (var monster of values) {
console.log(monster + "があらわれた");
}
// 生成するランダムな数値の範囲を調べる
var number_of_monsters = values.length;
console.log("モンスターが" + number_of_monsters + "匹あらわれた");
// ランダムにインデックスを生成する
var target = Math.floor(Math.random() * number_of_monsters);
console.log(target);
// 選ばれた一匹に会心の一撃を繰り出す
console.log(values[target] + "に会心の一撃!モンスターを倒した");
});