Advertisement
Guest User

OnTimeForTheExam

a guest
Apr 4th, 2020
142
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function solve(examHour, examMinutes, arriveHour, arriveMinutes){
  2.     examHour = Number(examHour);
  3.     examMinutes = Number(examMinutes);
  4.     arriveHour = Number(arriveHour);
  5.     arriveMinutes = Number(arriveMinutes);  
  6.  
  7.     let examInMinutes = examHour * 60 + examMinutes;
  8.     let arriveInMinutes = arriveHour * 60 + arriveMinutes;
  9.     let late = arriveInMinutes - examInMinutes;
  10.     let early = examInMinutes - arriveInMinutes;
  11.     let diff = Math.abs(late);
  12.     let hours = parseInt(diff / 60);  // взима целочислената част от делението
  13.     let minutes = diff % 60;
  14.    
  15.     const zeroPad = (num, places) => String(num).padStart(places, '0')
  16.     //https://stackoverflow.com/questions/2998784/how-to-output-numbers-with-leading-zeros-in-javascript
  17.  
  18.     if (late > 0){
  19.         console.log(`Late`)
  20.         if (late <= 59){
  21.             console.log(`${late} minutes after the start`)
  22.         }
  23.         else{
  24.             console.log(`${hours}:${zeroPad(minutes, 2)} hours after the start`)
  25.         }
  26.     }
  27.     else if (early >= 0 && early <= 30){
  28.         console.log(`On time`)
  29.         if (early != 0){
  30.             console.log(`${early} minutes before the start`)
  31.         }
  32.     }
  33.     else if (early > 30){
  34.         console.log(`Early`)
  35.         if (early <= 59){
  36.             console.log(`${early} minutes before the start`)
  37.         }
  38.         else{
  39.             console.log(`${hours}:${zeroPad(minutes, 2)} hours before the start`)
  40.         }
  41.     }
  42. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement