๐Ÿ”ฌComputer Science/์ฝ”๋”ฉํ…Œ์ŠคํŠธ

[if ๋ฐ˜๋ณต๋ฌธ] 1์ดˆ ๋’ค ์‹œ๊ฐ„ ์•Œ๋ ค์ฃผ๊ธฐ

hellohailie 2022. 5. 5. 22:47

๋ฌธ์ œ: ์‹œ, ๋ถ„, ์ดˆ๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ 1์ดˆ๋ฅผ ๋”ํ•œ ๊ฒฐ๊ณผ๊ฐ’์„ ํŠน์ • ํ˜•ํƒœ์˜ ๋ฉ”์‹œ์ง€๋กœ ๋ฆฌํ„ดํ•˜๊ธฐ

์ธ์ž 1: hour / number ํƒ€์ž…์˜ ์ •์ˆ˜ (0 <= hour && hour < 24)

์ธ์ž 2: minute / number ํƒ€์ž…์˜ ์ •์ˆ˜ (0 <= minute && minute < 60)

์ธ์ž 3: second / number ํƒ€์ž…์˜ ์ •์ˆ˜ (0 <= second && second < 60)

์ถœ๋ ฅ:

  • string ํƒ€์ž…์„ ๋ฆฌํ„ดํ•˜๊ธฐ.
  • 1์ดˆ ๋’ค์— {hour}์‹œ {minute}๋ถ„ {second}์ดˆ ์ž…๋‹ˆ๋‹ค ํ˜•์‹์œผ๋กœ ๋ฆฌํ„ดํ•˜๊ธฐ.

์˜ˆ์‹œ 

let output = addOneSecond(14, 17, 59);
console.log(output); // --> '1์ดˆ ๋’ค์— 14์‹œ 18๋ถ„ 0์ดˆ ์ž…๋‹ˆ๋‹ค'

output = addOneSecond(1, 59, 59);
console.log(output); // --> '1์ดˆ ๋’ค์— 2์‹œ 0๋ถ„ 0์ดˆ ์ž…๋‹ˆ๋‹ค'

output = addOneSecond(3, 24, 29);
console.log(output); // --> '1์ดˆ ๋’ค์— 3์‹œ 24๋ถ„ 30์ดˆ๊ฐ€ ์ž…๋‹ˆ๋‹ค'

output = addOneSecond(23, 59, 59);
console.log(output); // --> '1์ดˆ ๋’ค์— 0์‹œ 0๋ถ„ 0์ดˆ ์ž…๋‹ˆ๋‹ค'

 

๋ฌธ์ œ ํ’€์ด

function addOneSecond(hour, minute, second) {
  // TODO: ์—ฌ๊ธฐ์— ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.
  // second 60์ดˆ๊ณผ => second = 0, minute +1,
  // minute 60์ดˆ๊ณผ => minute = 0, hour+1,
  // hour 24์ดˆ๊ณผ => hour = 0

  if (second === 59){    // 1์ดˆ๋ฅผ ๋”ํ•˜๊ธฐ ์ „ second๋กœ ์‹œ์ž‘ํ•œ๋‹ค. 
    minute = minute + 1;
    second = 0;
  } else {
    second = second + 1;
  }

  if (minute === 60){    // ์œ„์˜ if๋ฌธ์—์„œ 1์„ ๋”ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— 60์œผ๋กœ ์„ค์ •ํ–ˆ๋‹ค. 
    hour = hour + 1;
    minute = 0;
  }

  if (hour === 24){    
    hour = 0;
  }

  return `1์ดˆ ๋’ค์— ${hour}์‹œ ${minute}๋ถ„ ${second}์ดˆ ์ž…๋‹ˆ๋‹ค`;
}