標準入力メニュー【1つの整数の入力・1000個の整数の半角スペース区切りの入力 ほか】
【STEP: 1】コード (1)
reader.on('close', () => {
const a = Number(lines[0]); // lines[0]を数値に変換
console.log(a);
});
文字列として渡された値を Number()
で数値に変換しました。
【STEP: 1】コード(2)
reader.on('close', () => {
const a = lines[0];
console.log(a - 0); // - 0 で数値変換
});
a − 0 で数字 (文字列) が数値になりました。
【STEP: 2】コード(1)
reader.on('close', () => {
const [a, b] = lines[0].split(' ').map(Number); // 入力を(' ')区切りの配列に変換→数値に変換
console.log(a); // a を表示
console.log(b); // b を表示
});
split(' ')
で入力値を半角スペース区切りの配列に変換して map(Number)
で配列の要素を全て数値に変換してから [a, b] に代入しました。
【STEP: 2】コード(2)
reader.on('close', () => {
const N = lines[0].split(' ').map(Number);
N.forEach(n => { // N の 各要素を n で受け取って
console.log(n); // n を表示
});
});
lines[0].split(' ').map(Number)
を N で受け取り forEach()
で出力しています。
【STEP: 3】コード (1)
reader.on('close', () => {
const A = lines[0].split(' ').map(Number);
for (let i = 0; i < 5; i++) {
console.log(A[i]); // A[0]〜A[4]を表示
}
});
.split(' ').map(Number)
で入力値を(‘ ‘)区切りの配列に変換。 更に 値を数値化して for文 で出力しました。5行なので i < 5。
【STEP: 3】コード (2)
reader.on('close', () => {
const A = lines[0].split(' ').map(Number);
A.forEach(a => { // A の 各要素を a で受け取って…
console.log(a); // a を表示
});
});
forEach()
で出力しました。
【STEP: 4】コード (1)
reader.on('close', () => {
const A = lines[0].split(' ').map(Number);
for (let i = 0; i < 10; i++) {
console.log(A[i]);
}
});
配列の要素数が 10 になったので for文 のカウント変数 が i < 10 になりました。
【STEP: 4】コード (2)
reader.on('close', () => {
const A = lines[0].split(' ').map(Number);
A.forEach(a => {
console.log(a);
});
});
【STEP: 3】(2) と全く同じコードでOKでした。
【FINAL】コード (1)
reader.on('close', () => {
const A = lines[0].split(' ').map(Number);
for (let i = 0; i < 1000; i++) {
console.log(A[i]);
}
});
配列の要素数が 1000 になったので ループの条件が i < 1000。
【FINAL】コード (2)
reader.on('close', () => {
const A = lines[0].split(' ').map(Number);
A.forEach(a => {
console.log(a);
});
});
配列の要素数が1000になりましたが こちらも【STEP: 3】(2) と同じです。
コメント