우선 가장 크게 나누어야 하는 것은 입력된 minute값이 45보다 크거나같은지, 작은지 입니다.
minute이 45보다 크거나 같다면 45분전에도 같은 hour를 가지지만,
minute이 45보다 작다면 45전에는 hour가 그 전시간대로 넘어가기 때문입니다.따라서 나오는 코드
if( m >= 45 ){
}
else if(m < 45){
}
그 다음으로는 hour가 0시(자정)일 때입니다.
hour가 0시가 아닌 시간들은 -1을 통해 쉽게 구할 수 있지만, 0시 - 1 의 경우 -1시가 되므로 에러가 납니다. 따라서, 0시(자정)의 경우만 시간을 넘을시 23시로 변환되게 짰습니다. 앞서 짠 minute이 45보다 작을 경우의 코드 안에 대입됩니다.
else if(m < 45){ if(h==0){ } else if(h=!0){ } }
마지막으로,
1) minute이 45보다 클 경우( hour는 그대로, minute에서 45분을 뺌.)console.log(h, m-45);
2) minute이 45보다 작을 경우 + 0시일 경우( hour는 23시로, minute에는 15 더함.)
console.log(23, m+15);
3) minute이 45보다 작을 경우( hour에서 1을 빼고 , minute에는 15 더함.)
console.log(h-1, m+15);