Loading...

Във форума е въведено ограничение, което позволява на потребителите единствено да разглеждат публикуваните въпроси.

Chetiov avatar Chetiov 5 Точки

Задача Навреме за Изпит Java

Студент трябва да отиде на изпит в определен час (например в 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“.

 

Привет мъча да реша въпросната задачка написах този код http://pastebin.com/H5zEGkKy Проблема е че при задаване на стойности при които се получава закаснение/подраняване с повече от час не се изписва цялото съобщение а само част пример: вход 11 , 30 , 8, 12 изход Early 3:18 hours а трябва да е Early 3:18 hours before the start . Като пусна дебъгера ми изкарва Disconnected from the target VM и немога да проверя каде е грешката.

 

Самата задачка се намира тук

Тагове:
0
Programming Basics 18/11/2016 15:46:29
StefkaVasileva avatar StefkaVasileva 250 Точки

Мисля,че проблема е тук:  if (hours > 0) ,  когато това условие е вярно се изписват часовете и минутите и кода който  е в тялото на else не се изпълнява, за това и не се изписва before или after . Направи просто още една проверка. 

1
18/11/2016 16:10:30
Chetiov avatar Chetiov 5 Точки

Да вярно не съм догледал. Благодаря за помоща вкарах условието в проблемния if и сега кода работи 100 от 100.

http://pastebin.com/ff4WXNYH

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.