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 

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ ์•ˆ์ „ํ•˜๊ฒŒ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ€์žฅ ํฐ ์ •์ˆ˜๊ฐ’

์ž์—ฐ์ˆ˜ N์ด ์ž…๋ ฅ๋˜๋ฉด 1๋ถ€ํ„ฐ N๊นŒ์ง€์˜ ํ•ฉ์„ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์„ธ์š”.

์ž…๋ ฅ์„ค๋ช… | ์ฒซ ๋ฒˆ์งธ ์ค„์— 20์ดํ•˜์˜ ์ž์—ฐ์ˆ˜ N์ด ์ž…๋ ฅ๋œ๋‹ค.

์ถœ๋ ฅ์„ค๋ช… | ์ฒซ ๋ฒˆ์งธ ์ค„์— 1๋ถ€ํ„ฐ N๊นŒ์ง€์˜ ํ•ฉ์„ ์ถœ๋ ฅํ•œ๋‹ค.

์ž…๋ ฅ์˜ˆ์ œ | 6

์ถœ๋ ฅ์˜ˆ์ œ | 21


ํ’€์ด

1. ํ•จ์ˆ˜ ์•ˆ์— ๋ฐ˜๋ณต๋ฌธ(for๋ฌธ)์„ ์ž‘์„ฑํ•ด์„œ ๋งŒ๋“ ๋‹ค.

2. ๋ฐ›์•„์˜ค๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜ ์•ˆ์—์„œ ๊ฐ’์„ ๊ณ„์† ๋”ํ•˜๋Š” ๋ฐ˜๋ณต์„ ๋งŒ๋“ค์–ด์ค€๋‹ค.

3. ๋ˆ„์ ์œผ๋กœ ๊ณ„์‚ฐ๋˜๊ฒŒ ํ•  ๊ฒƒ

 

์ฒ˜์Œ ์ž‘์„ฑํ•œ ํ•จ์ˆ˜

function sumAll(x){
	let output;
    for(let i = 1; i <= x; i++){
    	output += 1;
    }
    return output;
}

console.log(sumAll(6));

NaN๊ฐ€ ๋‚˜์™”๋‹ค. 

 

์ˆ˜์ •ํ•œ ํ•จ์ˆ˜

function sumAll(x){
	let output = 0; // output์— ๋ˆ„์ ํ•ด์ฃผ๊ธฐ์œ„ํ•ด์„œ 
    for (let i = 1; i <= x; i++) {
    	output += i; // output = output + i
    }
    return output;
}

console.log(sumAll(6));

output์— ๋ˆ„์ ํ•ด์ฃผ๊ธฐ ์œ„ํ•ด์„œ ์ฒ˜์Œ์— 0์œผ๋กœ ํ• ๋‹นํ•œ๋‹ค. 

output = output + i

์šฐํ•ญ ์—ฐ์‚ฐ์„ ๋‹ค ํ•˜๊ณ ๋‚˜์„œ ์ขŒํ•ญ์˜ ๊ฐ’์ด ๊ฐฑ์‹ ๋œ๋‹ค.

1 ← 0 + 1

3 ← 1 + 2

6 ← 3 + 3

10 ← 6 + 4

์ด๋Ÿฐ์‹์œผ๋กœ ๋ˆ„์ ๋˜๋ฉด์„œ ์ง„ํ–‰๋œ๋‹ค.

์—ฐํ•„ 1 ๋‹ค์Šค๋Š” 12์ž๋ฃจ์ž…๋‹ˆ๋‹ค. ํ•™์ƒ 1์ธ๋‹น ์—ฐํ•„์„ 1์ž๋ฃจ์”ฉ ๋‚˜๋ˆ„์–ด ์ค€๋‹ค๊ณ  ํ•  ๋•Œ N๋ช…์ด ํ•™์ƒ์ˆ˜๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ํ•„์š”ํ•œ ์—ฐํ•„์˜ ๋‹ค์Šค ์ˆ˜๋ฅผ ๊ณ„์‚ฐํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์„ธ์š”.

์ž…๋ ฅ์„ค๋ช… | ์ฒซ ๋ฒˆ์งธ ์ค„์— 1000์ดํ•˜์˜ ์ž์—ฐ์ˆ˜ N์ด ์ž…๋ ฅ๋œ๋‹ค.

์ถœ๋ ฅ์„ค๋ช… | ์ฒซ ๋ฒˆ์งธ ์ค„์— ํ•„์š”ํ•œ ๋‹ค์Šค ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

์ž…๋ ฅ์˜ˆ์ œ  | 25

์ถœ๋ ฅ์˜ˆ์ œ  | 3


ํ’€์ด

1. 1 ๋‹ค์Šค ๋‹น 12 ์ž๋ฃจ๊ฐ€ ๋“ค์–ด์žˆ๋‹ค. 1์ธ๋‹น 1์ž๋ฃจ ํ•„์š”ํ•˜๋‹ค. n๋ช…์ด๋ฉด n์ž๋ฃจ ํ•„์š”ํ•˜๋‹ค.

2. ํ•™์ƒ์ˆ˜ n๋ช… / 12 -> ๋ฌด์กฐ๊ฑด ์˜ฌ๋ฆผ์„ ํ•ด์ค€๋‹ค. Math.ceil() ๋ฉ”์†Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

3. ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ํ•™์ƒ์ˆ˜

 

์ฒ˜์Œ์— ์ž‘์„ฑํ•œ ํ•จ์ˆ˜

function pencilBox(students){
	let boxes, answer;
	students / 12 = boxes;
	answer = Math.ceil(boxes);
	return answer;
        }
        
console.log(pencilBox(25));

syntaxError ๋ฐœ์ƒ 

students / 12 = boxes์˜ ํ• ๋‹น์ด ์ž˜ ๋ชป๋˜์—ˆ๋‹ค๊ณ  ํ•œ๋‹ค. 

function pencilBox(students){
	let answer, boxes;
	boxes = students / 12
	answer = Math.ceil(boxes);
	return answer;
}
        
console.log(pencilBox(25));

๋‹ค์‹œ ์จ์ฃผ์—ˆ๋”๋‹ˆ ์ž˜ ์‹คํ–‰๋œ๋‹ค. ๊ทธ๋ ‡์ง€๋งŒ ๊ตณ์ด boxes๋ฅผ ๋ณ€์ˆ˜๋กœ ์ž‘์„ฑํ•˜์ง€์•Š์•„๋„ ๋˜์—ˆ๋‹ค. 

 

 

๋‹ค์‹œ ์ˆ˜์ •ํ•œ ํ•จ์ˆ˜

function pencilBox(students){
	let answer;
	answer = Math.ceil(students / 12);
	return answer;
}
        
console.log(pencilBox(25));

boxes๋ฅผ ๋ณ€์ˆ˜๋กœ ์ž‘์„ฑํ•  ํ•„์š”๊ฐ€ ์—†์—ˆ๋‹ค. Math.ceil()์•ˆ์— ๋„ฃ์–ด์ฃผ๋ฉด ๋” ์งง๊ฒŒ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค.

 

์ด๊ฑฐ๋„ ๊ธธ๋‹ค.

function pencilBox(students){
	let answer = Math.ceil(students/12);
	return answer;
}

console.log(pencilBox(25));

๊ธธ์ด๊ฐ€ ์„œ๋กœ ๋‹ค๋ฅธ A, B, C ์„ธ ๊ฐœ์˜ ๋ง‰๋Œ€ ๊ธธ์ด๊ฐ€ ์ฃผ์–ด์ง€๋ฉด ์ด ์„ธ ๋ง‰๋Œ€๋กœ ์‚ผ๊ฐํ˜•์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ ์œผ๋ฉด “YES"๋ฅผ ์ถœ๋ ฅํ•˜๊ณ , ๋งŒ๋“ค ์ˆ˜ ์—†์œผ๋ฉด ”NO"๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

์ž…๋ ฅ์„ค๋ช… | ์ฒซ ๋ฒˆ์งธ ์ค„์— 100์ดํ•˜์˜ ์„œ๋กœ ๋‹ค๋ฅธ A, B, C ๋ง‰๋Œ€์˜ ๊ธธ์ด๊ฐ€ ์ฃผ์–ด์ง„๋‹ค.

์ถœ๋ ฅ์„ค๋ช… | ์ฒซ ๋ฒˆ์งธ ์ค„์— “YES", "NO"๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

์ž…๋ ฅ์˜ˆ์ œ 1 | 6 7 11

์ถœ๋ ฅ์˜ˆ์ œ 1 | YES

์ž…๋ ฅ์˜ˆ์ œ 2 | 13 33 17

์ถœ๋ ฅ์˜ˆ์ œ 2 | NO


[ํ’€์ด]

์‚ผ๊ฐํ˜•์„ ๋งŒ๋“œ๋Š” ์กฐ๊ฑด : ๊ฐ€์žฅ ๊ธด ๋ณ€์„ ์ œ์™ธํ•œ ๋‚˜๋จธ์ง€ 2๊ฐœ ๋ณ€์˜ ํ•ฉ์ด ๊ฐ€์žฅ ๊ธด ๋ณ€๋ณด๋‹ค ์ปค์•ผํ•œ๋‹ค. 

 

1. ๊ฐ€์žฅ ๊ธด ๋ณ€ ์ฐพ๊ธฐ(max๊ฐ’ ์ฐพ๊ธฐ)

์„ธ ์ˆ˜ ์ค‘์—์„œ ์ตœ์†Ÿ๊ฐ’ ์ฐพ์•˜๋˜ ๋ฐฉ์‹์„ ๊ทธ๋Œ€๋กœ ์“ด๋‹ค.

 

2. ๋‚˜๋จธ์ง€ ๋ณ€ ๋‘ ๊ฐœ์˜ ํ•ฉ ์ฐพ๊ธฐ

๊ฐ€์žฅ๊ธด๋ณ€max๋ณด๋‹ค ๋‚˜๋จธ์ง€ ๋ณ€ ๋‘๊ฐœ์˜ ํ•ฉ์ด ์ปค์•ผํ•œ๋‹ค.

์ดํ•ฉ - max = ๋‚˜๋จธ์ง€ ๋‘ ๋ณ€์˜ ํ•ฉ

์ดํ•ฉ์„ ๋ณ€์ˆ˜๋กœ ์ž‘์„ฑํ•ด์ค€๋‹ค.

 

3. ๋‚˜๋จธ์ง€ ๋ณ€ ๋‘ ๊ฐœ์˜ ํ•ฉ ๋ณด๋‹ค max๊ฐ€ ์ž‘์œผ๋ฉด NO ๋ฆฌํ„ด, ํฌ๋ฉด YES ๋ฆฌํ„ด

 

 

 

๋ฌธ์ œ

100์ดํ•˜์˜ ์ž์—ฐ์ˆ˜ A, B, C๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ ์„ธ ์ˆ˜ ์ค‘ ๊ฐ€์žฅ ์ž‘์€ ๊ฐ’์„ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์„ธ์š”.

(์ •๋ ฌ์„ ์‚ฌ์šฉํ•˜๋ฉด ์•ˆ๋ฉ๋‹ˆ๋‹ค)

 

์ž…๋ ฅ์„ค๋ช… | ์ฒซ ๋ฒˆ์งธ ์ค„์— 100์ดํ•˜์˜ ์„ธ ์ž์—ฐ์ˆ˜๊ฐ€ ์ž…๋ ฅ๋œ๋‹ค.

์ถœ๋ ฅ์„ค๋ช… | ์ฒซ ๋ฒˆ์งธ ์ค„์— ๊ฐ€์žฅ ์ž‘์€ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

์ž…๋ ฅ์˜ˆ์ œ | 6 5 11

์ถœ๋ ฅ์˜ˆ์ œ | 5

 

 

ํ’€์ด

๊ฐ€์žฅ ์ž‘์€ ์ˆ˜ ์ถœ๋ ฅํ•˜๊ธฐ ์œ„ํ•ด์„œ A, B, C๋ฅผ ๋น„๊ตํ•ด์„œ ์ž‘์€ ์ˆ˜๋ฅผ ๊ฐ€๋ ค๋‚ธ๋‹ค.

1. A์™€ B๋ฅผ ๋จผ์ € ๋น„๊ตํ•˜๊ณ ,

2. ๊ทธ ์ค‘์— ์ž‘์€ ๊ฐ’์ด๋ž‘ C๋ž‘ ๋น„๊ตํ•ด์„œ ๊ฐ€์žฅ ์ž‘์€ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

 

+ Recent posts