Решение задача Навреме за изпит - On Time For The Exam
Здравейте,
Решението ми е следното - https://pastebin.com/wsTHx5Ev. Judge ми дава 93/100. От известно време вече прегледаждам кода, но явно сам няма да успея да си открия грешката. Из форума намерих няколко решения на задачата, но не мога да ги "напасна" с моето.
Текста на задачата е:
Студент трябва да отиде на изпит в определен час (например в 9:30 часа). Той идва в изпитната зала в даден час на пристигане (например 9:40). Счита се, че студентът е дошъл навреме, ако е пристигнал в часа на изпита или до половин час преди това. Ако е пристигнал по-рано повече от 30 минути, той е подранил. Ако е дошъл след часа на изпита, той е закъснял. Напишете програма, която прочита време на изпит и време на пристигане и отпечатва дали студентът е дошъл навреме, дали е подранил или е закъснял и с колко часа или минути е подранил или закъснял.
Вход
От конзолата се четат 4 цели числа (по едно на ред), въведени от потребителя:
- Първият ред съдържа час на изпита – цяло число от 0 до 23.
- Вторият ред съдържа минута на изпита – цяло число от 0 до 59.
- Третият ред съдържа час на пристигане – цяло число от 0 до 23.
- Четвъртият ред съдържа минута на пристигане – цяло число от 0 до 59.
Изход
На първият ред отпечатайте:
- “Late”, ако студентът пристига по-късно от часа на изпита.
- “On time”, ако студентът пристига точно в часа на изпита или до 30 минути по-рано.
- “Early”, ако студентът пристига повече от 30 минути преди часа на изпита.
Ако студентът пристига с поне минута разлика от часа на изпита, отпечатайте на следващия ред:
- “mm minutes before the start” за идване по-рано с по-малко от час.
- “hh:mm hours before the start” за подраняване с 1 час или повече. Минутите винаги печатайте с 2 цифри, например “1:05”.
- “mm minutes after the start” за закъснение под час.
- “hh:mm hours after the start” за закъснение от 1 час или повече. Минутите винаги печатайте с 2 цифри, например “1:03”.
Ах тези малки грешки ме убиват... Благодаря ти.