Advertisement
Guest User

OnTimeForExam-Problem2

a guest
Nov 20th, 2019
427
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function exam (input) {
  2.     let examHour = Number(input.shift());
  3.     let examMinutes = Number(input.shift());
  4.     let arriveHour = Number(input.shift());
  5.     let arriveMinutes = Number(input.shift());
  6.  
  7.     let totalExamMinutes = (examHour * 60) + examMinutes;
  8.     let totalArriveMinutes = (arriveHour * 60) + arriveMinutes;
  9.  
  10.             let totalMinutes = Math.abs(totalArriveMinutes - totalExamMinutes);
  11.  
  12.             let afterH = Math.floor(totalMinutes / 60);
  13.             let afterMin = totalMinutes % 60;
  14.  
  15.     //проверка OnTime
  16.         let totalOnTimeMinutes = (60 - arriveMinutes) + examMinutes;
  17.     //проверка OnTime - дотук
  18.  
  19.     //проверка за Early
  20.         let totalEarlyMinutes = examMinutes - arriveMinutes;
  21.     //проверка Early дотук
  22.    
  23.     //оттук готово
  24.     //КОДА ЗА Late
  25.     if ((arriveHour > examHour) || (arriveHour === examHour && arriveMinutes > examMinutes)) {
  26.         console.log("Late");
  27.  
  28.         if (arriveHour === examHour) {
  29.             let minutesAfter = arriveMinutes - examMinutes;
  30.             console.log(`${minutesAfter} minutes after the start`);
  31.  
  32.         }else {
  33.             let examInMinutes = (examHour * 60) + examMinutes;
  34.             let arriveInMinutes = (arriveHour * 60) + arriveMinutes;
  35.  
  36.             let endMinutes = arriveInMinutes - examInMinutes;
  37.  
  38.             let afterHour = endMinutes / 60;
  39.             let afterMinutes = endMinutes % 60;
  40.  
  41.             if (Math.floor(afterHour) === 0) {
  42.                 if (afterMinutes < 10) {
  43.                     console.log(`0${afterMinutes} minutes after the start`);
  44.                 } else {
  45.                     console.log(`${afterMinutes} minutes after the start`);
  46.                 }
  47.             }else if (Math.floor(afterHour) != 0) {
  48.                 if (afterMinutes < 10) {
  49.                     console.log(`${Math.floor(afterHour)}:0${afterMinutes} hours after the start`);
  50.                 } else {
  51.                     console.log(`${Math.floor(afterHour)}:${afterMinutes} hours after the start`);
  52.                 }
  53.             }
  54.         }//дотук готово
  55.     //Кода за OnTime
  56.     }else if (arriveHour === examHour && arriveMinutes === examMinutes) {
  57.         console.log("On time"); //ГОТОВО - кода се отнася за OnTime
  58.  
  59.     }else if (arriveHour <= examHour && totalOnTimeMinutes <= 30) {
  60.         console.log("On time");
  61.  
  62.         if (arriveHour <= examHour && totalOnTimeMinutes < 10) {
  63.             console.log(`${totalOnTimeMinutes} minutes before the start`);
  64.  
  65.         }else if (arriveHour < examHour) {
  66.             console.log(`${totalOnTimeMinutes} minutes before the start`);
  67.         }
  68.     //КОДА за Early
  69.     }else if (arriveHour === examHour && totalEarlyMinutes > 30) {
  70.         console.log("Early");
  71.         console.log(`${totalEarlyMinutes} minutes before the start`);
  72.  
  73.     }else if (arriveHour < examHour && totalOnTimeMinutes > 30) {
  74.         console.log("Early");
  75.  
  76.         if (afterH === 0) {
  77.             if (afterMin < 10) {
  78.             console.log(`0${afterMin} minutes before the start`);
  79.             }else {
  80.             console.log(`${afterMin} minutes before the start`);
  81.             }
  82.  
  83.         }else if (afterH != 0) {
  84.             if (afterMin < 10) {
  85.                 console.log(`${afterH}:0${afterMin} hours before the start`);
  86.                 }else {
  87.                     console.log(`${afterH}:${afterMin} hours before the start`);
  88.                 }
  89.         }
  90.     }
  91.    
  92.  
  93. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement