03. On time for the Exam- 06 March - проблем с изхода
Здравейте колеги,
малко страничен въпрос, ама се надявам да ми помогнете. Като пусна задачата в Judge ми дава 81 точки и реших да сваля тестовете и да видя, какъв е съответно входа и изхода и се оказа, че изхода от програмата ми напълно съвпада с очаквания и не мога да разбере, къде е проблема. Ето кода: http://pastebin.com/1nvgnBLU (знам, че е бая дълго написано и има 100% по- оптимизиран вариант, ама това не ми е проблема сега).
Входовете при които става проблем са:
1. 9 00 10 30 - изходът е Late 1:30 hours after the start - при мене е същия.
2. 9 00 8 30- изходът е On time 30 minutes before the start - при мене е същия.
3. 10 00 10 00 - изходът е On time- при мене е същия.
Благодаря предварително! (:
Не е от там грешката, защото има return след това, аз го пробвах и с else резултатът е същия, в крайна сметка ще питам някой от екипа!
Мерси все пак за хелпа! (:
От там е едната грешка със сигурност, понеже без else печата едновременно:
Early
1:00 hours before the start
60 minutes before the start
Но другата грешка нямах време да я открия, за което се извинявам!
Включил съм return, който директно прекратява програмата, така че не е от него. Направих друго решение, което мина коректно.
Сега видях и return-a
Радвам се, че си намерил решението.
А по принцип извън задачата, когато искаш да прекъснеш, не е ли по-добре да използваш <break>?!
Return-a не се ли ползва по-скоро при процедури/функции да прекрати изпълнението им и да върне променлива/и?
До колкото знам break се ползва в логически условия, които са в тялото на някакъв цикъл, а return директно слага край на метода и излиза от него. В случая искаме да отпечатаме резултата и после да прекратим програмата.
Здравейте,кодери.. може ли тестовете от judge, защото не успях да намеря последната си грешка.. Благодаря предварително ... ето го кода: https://pastebin.com/04wdrH43