문제
9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오.
예를 들어, 서로 다른 9개의 자연수
3, 29, 38, 12, 57, 74, 40, 85, 61
이 주어지면, 이들 중 최댓값은 85이고, 이 값은 8번째 수이다.
풀이
for 문을 사용하여 모든 값과 비교합니다. 그 뒤 가장 큰 값인 max값을 구하고 그에 해당하는 max값의 위치인 maxIdx값을 구했습니다.
코드
const fs = require("fs");
const file = process.platform === "linux" ? "/dev/stdin" : "./ex.txt";
let input = fs
.readFileSync(file)
.toString()
.split("\n")
.map(x => Number(x));
let max = input[0];
let maxIdx = 0;
for (let i = 0; i < 9; i++) {
if (max < input[i]) {
max = input[i];
maxIdx = i;
}
}
console.log(max);
console.log(maxIdx + 1);