Loading...
Sanity avatar Sanity Trainer 194 Точки

Когато регистрираш човек с license plate и той вече е регистриран с някакъв License plate ... Не трябва да принтираш подадения във входа на данни License Plate а този с който вече е регистриран конкретния човек (стария)...

1
NStankov avatar NStankov 18 Точки

Да, ще трябва да си го извадиш от речника :)

0
dimo.ivanov avatar dimo.ivanov 35 Точки

От там е.

0
plamen83 avatar plamen83 4 Точки

най - накрая един смислен отговор по троблема. Браво !!! Точно по тази причина тест 2 Гърми

0
dimo.ivanov avatar dimo.ivanov 35 Точки

по коя? кой е смисленият отговор?

0
plamen83 avatar plamen83 4 Точки

Когато регистрираш човек с license plate и той вече е регистриран с някакъв License plate ... Не трябва да принтираш подадения във входа на данни License Plate а този с който вече е регистриран конкретния човек (стария)...

0
plamen83 avatar plamen83 4 Точки

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

0
dimo.ivanov avatar dimo.ivanov 35 Точки

не е това единствената причина да гърми test 2, обаче.

аз затова питам за друга

0
plamen83 avatar plamen83 4 Точки

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

0
dimo.ivanov avatar dimo.ivanov 35 Точки

а защо е важна поредността на ифовете?

0
plamen83 avatar plamen83 4 Точки

защото условието е такова. Първо :

The system only supports one car per user at the moment, so if a user tries to register another license plate, using the same username, the system should print: “ERROR: already registered with plate number {licensePlateNumber}”

после: 

If the license plate is invalid, the system should print:
“ERROR: invalid license plate {licensePlateNumber}“

после: 

If the user tries to register someone else’s license plate, the system should print:
“ERROR: license plate {licensePlateNumber} is busy”
 

и накрая :

If the aforementioned checks pass successfully, the plate can be registered, so the system should print:
“{username} registered {licensePlateNumber} successfully”
 


 

0
dimo.ivanov avatar dimo.ivanov 35 Точки

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

Ако в решението първо проверяваме дали номерът е валиден, после - дали юзърът вече се е регистрирал, как такава поредност пропуска някой неотговарящ да се регистрира, а поредността "първо - юзър, после - номер" - не го пропуска и всичко е наред?

0
plamen83 avatar plamen83 4 Точки

ima red i toi e redut v koito e napisano uslovieto na zada4ata. ako otkazva6 da prieme6 4e ima red, misli kak da prebori6 2riq test :)

0
26/06/2017 01:24:23
dimo.ivanov avatar dimo.ivanov 35 Точки

Добре. Ще задам въпроса по друг начин. Заеби има ли ред на проверките или няма. Заеби тест 2. Кажи защо едната поредност би дала различен резултат от другата и в кой случай?

0
Sanity avatar Sanity Trainer 194 Точки

Възможно е 2 неща да са грешни при един вход на данни. Подредбата на проверките ти дефинира кое от 2-те грешни неща ще провериш първо и за кое от тях ще сигнализираш грешка. Ако не го направиш така както е описано като подредба в условието, е крайно възможно теста да очаква от теб да хванеш 1-вото грешно нещо, а ти да хващаш 2-рото.

1
dimo.ivanov avatar dimo.ivanov 35 Точки

Разбирам, че има тест, който при две грешни неща изисква да получи сигнал за едното, а аз сигнализирам за другото. 

Но генерално това какво значение има за крайния резултат от опита за регистриране на кола? Защо тази поредност е важна и има тест, който следи за нея? Ако е заради условието, дайте да напишем условието, така че да е ясно, че поредността на проверките е важна и е част от решението на задачата, което Judge очаква. Ако пък се съгласяваме, че такава проверка за поредност е безмислeна, защото (bool a || bool b) е винаги равно на (bool b || bool a), дайте да коригираме въпросния тест 2.

 

Иначе да обясня каква е моята логика да проверявам първо за валидност на номера и след това регистриран ли е юзъра:

Ако аз бачкам на бариерата на паркинг, когато дойде нова кола, първо ще погледна дали не е с фалшив номер и след това ще отворя тефрера, за да видя дали шофьора вече не е паркирал кола. Ако първо търся шофьора в тефтера, видя, че не е паркирал кола до този момент, и после видя, че номера на колата е невалиден, излиза, че ровенето в тефтера е било излишна операция.

Дано да е ясно какво имам предвид. Мерси :)

 

ПС: И само, за да илюстрирам, че условията на задачите не са "абсолютно категорични":

Из условието на 10. Student Groups от същото упражнение:

"Your task is to create and print the study groups for each town as follows:

  • For each town create and print one or several study groups (depends of the number or registered students and the capacity of the lab in this town).
  • For each town order the students by registration date (ascending), then by name (ascending) then by email (ascending), then fill them into groups. If the students are less or equal to the lab capacity, create only one group. When the students are more than the lab capacity, distribute them in multiple groups.
  • Print all groups ordered by town (ascending) in the following format: ...."

Тук, мисля, никой не следва (или поне не трябва да следва) поредността, описана в условието - 1. създаване и принтиране на групи за всеки град; 2. Сортиране на студентите по споменати критерии; 3. Принтиране на групите, сортирани по град.... и тн.

0
26/06/2017 14:31:46
plamen83 avatar plamen83 4 Точки

колега на всички ни е ясно. конкретно на мен логиката ми беше същата. И наистина, от гледна точка на това кое е смислено и кое не, задачата е леко неясна. Но за това, в условието е изписан реда на проверките. И аз съм съгласен. че можеше да има още един ред, в който да се споменава, че е задължително да се спазва този ред, но....  

1
dimo.ivanov avatar dimo.ivanov 35 Точки

Значи се съгласяваш, че има проблем в условието. Щото предполагам после в 10та задача не се съобразяваш с условието и не принтираш групите по два пъти - преди и след сортирането, нали?!

Та не че не съм я зарязал отдавна тая задача, но идеята е да сигнализираме, за да я оправят и някой друг следващия курс да не си блъска главата за глупости.

0
26/06/2017 14:52:20
SvilenPavlov avatar SvilenPavlov 11 Точки

Добре, че реших да гоогълна,преди да пиша във форума. Съгласен съм,че никъде не става ясно, поне за мен, че е задължителен реда на проверките,щото няма никва логика. Ма като гледам в майското издание на са го оправили...

0
Sanity avatar Sanity Trainer 194 Точки

Не съм казал, че това е конкретния случай в задачата. Просто дадох пример, че винаги трябва да се следи условието. :) Условието е пред вас и е дефинирано в определен ред на операциите. Ако вие сте решили да дефинирате решението си по начин, различен от този който условието описва, няма как да е сигурно, че ще изкарате пълен резултат.

Накратко, условията на задачите са абсолютно категорични! Ако желаете максимален резултат, буквално правите това което пише в условието, така както го пише в условието.

Ще разследваме все пак теста.

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