7개 수가 주어지면 그 숫자 중 가장 작은 수를 출력하는 프로그램을 작성하세요.
입력설명 | 첫 번째 줄에 7개의 수가 주어진다.
출력설명 | 첫 번째 줄에 가장 작은 값을 출력한다.
입력 예제 | 5 3 7 11 2 15 17
출력 예제 | 2
[풀이 1]
Math.min.apply()
1. 표준내장객체인 Math 메소드를 사용한다. Math.min() : 전달받은 인수 중에서 가장 작은 수를 반환한다.
2. 배열을 인수로 전달 받아 배열의 요소 중에서 최소값을 구한다 -> apply 메소드를 사용한다.
function minValue(arr){
let answer = Math.min.apply(null, arr);
retrun answer;
}
let arr = [5, 3, 7, 11, 2, 15, 17]
console.log(minValue(arr));
[풀이 2]
Math.min()
function minValue(arr){
let answer=Math.min(...arr);
retrun answer;
}
let arr = [5, 3, 7, 11, 2, 15, 17]
console.log(minValue(arr));
... : 전개연산자spread operator - 배열을 펼쳐준다.
arr[0], arr[1], arr[2] 이런식으로 계속 펼쳐줘서 인자로 들어갈수있게 펼쳐준다.
[풀이 3]
Number객체 Number.MAX_SAFE_INTEGER
function minValue(arr){
let answer, min=Number.MAX_SAFE_INTEGER;
for(let i=0; i<arr.length; i++) {
if(arr[i]<min) min=arr[i];
anser = min;
retrun answer;
}
let arr = [5, 3, 7, 11, 2, 15, 17]
console.log(minValue(arr));
[사용한 개념]
Math 메소드는 수학적인 상수와 함수를 위한 property와 속성을 제공한다.
Math.max()
전달받은 인수 중에서 가장 큰수를 반환
배열을 인수로 전달받아 배열의 요소 중에서 최대값을 구하려면 Function.prototype.apply 메소드 또는 스프레드 문법을 사용해야 한다.
Math.max.apply(null, [1, 2, 3]); // 3
Math.min()
전달받은 인수 중에서 가장 작은 수를 반환.
인수가 전달되지 않으면 Infinity 반환
배열을 인수로 전달받아 배열의 요소 중에서 최소값을 구하려면 Function.prototype.apply 메소드 또는 스프레드 문법을 사용해야 한다.
Math.min.apply(null, [1, 2, 3]); // 1
apply 메소드
첫 번째 인자로 객체를 넘겨야한다. this에다가 객체를 넣어야하므로 null을 넣어준다.
Math.min.apply(null, arr);
Number.MAX_SAFE_INTEGER
자바스크립트에서 안전하게 표현할 수 있는 가장 큰 정수값