[Exam] Java Basics - 08 February 2015 - впечатления, решения
Здравейте колеги,
Отварям тази тема, за да може всеки който желае да сподели преживяването от изпита :)
Трудни ли Ви бяха задачите?
Какво ще кажете за 3та "любимата ми"?
Аз да Ви кажа съм доволен от себе си. Реших 3 задачи (1ва,2ра и 4та).
Научих нови неща от главоблъскането по 3та задача :) както се случва на всеки изпит.
Обичат да ни предизвикват с интересни задачи :)
Запомнете едно: Най-важното са знанията които трупаме с всеки изминал ден.
Дори най-много се научава от нашите неуспехи. Ще повторим материала и ще го затвърдим.
Не е ли така?
Успех на всички и горе главата :)
Keep calm and keep coding :)
Здрасти,
може ли да сложиш и линк към твоето решение на 2-ра, понеже в Гитхъб нещо не мога да ти ги намеря. Това е моето, което дава 70 точки и не мога да разбера, къде и за какво ми дава ексепшън:
Втора задача - http://pastebin.com/g6taGDpc .
А това е моето на 3-та, дава 100-те, но е доста грозно, защото доста бързах за тая задача и доста неща са безсмислено усложнени, ама не исках да пипам кода, а да хвана точките:
Трета задача - http://pastebin.com/bpQP8QbM
Това е решена от мен втора задача (като включва и време извън изпита...):
click
String[] input = see.nextLine().trim().split("\\s+");
вместо
String[] input = see.nextLine().trim().split(" +");
решава твоя проблем с Runtime error - ите на тестовете, които не ти минават
И с това го пробвах. Дава ексепшън
А? Сега даде 100! Добре де, защо " +" и "\\s+" са различни? И защо дава грешка по време на изпълнение. Попитах за това и ми обясниха, че е някакъв ексепшън!?
Разликата между " +" и "\\s+" е, че "\\s+" хваща всички празни места, без значение преди, след или между символите. А " +" хваща само тези между тях. Реално мисля, че няма разлика между " " и " +". Чесно казано това не съм го пробвал сега, но съдейки от това което опитах в http://www.regexr.com/, мисля че е така.
Има май. С това " " ми е давало грешка на някои задачи, а с това " +" не.
Да бе, вярно на RegExr не дава разлика... Ще пробвам да намеря, в коя задача ми е давало разликата само от това.
Наско, ето втора задача: https://github.com/nickgenov/JavaBasics/blob/master/8-Exams-Java-Basics/src/_02_LettersChangeNumbers.java
Мерси, аз вместо "\\s+" съм писал " +" и това ме е прецакало :)
Втора задача от изпита - и на мен ми даваше 70 точки, но като се дигнах за малко от лаптопа и се светнах къде бъркам.
LettersChangeNumbers
"\s" хваща интервал, табулация и празен ред (whitespace), а " " хваща само интервал.
"\s+" - означава 1 или повече whitespaces. Когато сложиш "+" след някой символ, това означава, че търсиш един или повече от този символ.