Въпросче: подавания низ (този с песните) един ред ли е или песните са разделени със \n
п.п. примерен тест няма ли да ни дадете QQ ?
Въпросче: подавания низ (този с песните) един ред ли е или песните са разделени със \n
п.п. примерен тест няма ли да ни дадете QQ ?
Ето тук е теста ми за втората задача (поне според моите разбирания за условието).
Ако реша, че не отговаря на условието, ще го променям :)
Да разбираме ли, че в имената на песните, имената на изпълнителите и т.н. няма да имаме ".", защото го използваме като разделител?
Като гледам в условието имаме следните допълнителни тагове: { 'John Coltrane' => %w[saxophone], 'J.S. Bach' => %w[piano polyphony], }
В примерния тест обаче имаме само "Bach" (без "J.S.") :)
Четири въпроса:
В примера с find:
# Връща имена на песни, които започват с думичката "My":
collection.find filter: ->(song) { |song| song.start_with?('My') }
song
би следвало да е обект от тип песен, ако правилно съм разбрал спецификацията. Това означава ли, че find може да работи по нещо различно от името на песента, или на филтъра се подава име (вместо цялата 'песен')?
song би следвало да е обект от тип песен, ако правилно съм разбрал спецификацията. Това означава ли, че find може да работи по нещо различно от името на песента, или на филтъра се подава име (вместо цялата 'песен')?
Въпросният пример е сгрешен, но все още не е оправен (направен е pull request, като гледам). Реално той изглежда така: collection.find filter: ->(song) { song.name.start_with?('My') }
Което означава, че find може да работи по всичко, което песента му предостави
@Пламен
Oops. Да, друга грешка в условието. В последния момент смених разделителя от ;
на .
(познайте защо) и съм забравил да обновя примера. Ще го оправя.
Впрочем, в последствие открих, че няма нужда да променям разделителя, но вече бях публикувал задачата.
@Иван
Моля научи научи Markdown и форматирай постовете си прегледно. Този съм го оправил, следващите - можеш и сам. kthxbye
Иначе:
Въпросният пример с find
по име на песен е оправен в условието на задачата.
Ето тук са моите добавки към теста, включени са и тези на Ивайло (поне тези за момента :) )
Добавил съм малко подсказви в условието на задачата. Може да погледнете.
Как точно се трие мнение ? :)
ПС Така и така съм писал вече - Специално искам да благодаря за допълнителните тестове, понеже хванах някои странни (д)ефекти с тях.
В секцията "Идеята" и двата примера със ; и тамън като го бях поправил и щях да комитвам забелязах че "W.A. Mozart" е изпълнителя и има ... точки ... :)
@Стефан
Понеже завързахме разговор за мойто решение и се чудя къде да отговарям (единия път върнах отговор в ruby.bg
другия път в gmail.com
)
Има ли вариант коментара да е позволен преди проверка поне върху собственото решение? Навит съм да го fork-на, ако е наложително :)
Момент, не можеш ли да коментираш собствено решение?
http://dox.bg/files/dw?a=fd12cc3b8d
Някъде из сорса гледах, че коментарите на непроверени задачи са непозволени (освен за админите де :) )
бтв това ти го писах в първия отговор :)
# това е едноредов коментар
=begin
много
редов
коментар
=end
това става ли ? аз имам няколко във първата задача ;)
@Михаил
По принцип говорим за коментирането на предадено решение във форума :)
Иначе Стефан каза, че предпочита сорсове без коментари и за това не пиша - ако някъде нещо има нужда от обяснение, има си начини ;)
@Михаил
$ gem install skeptic
Пробвай и виж. Можеш сам да си отговориш на този въпрос :) . След това можеш да се завърнеш на форумите и да ни споделиш какво си открил. :)
@Иван
Това трябва да го оправя. Можеше да коментираш и преди него. Просто трябваше да знаеш към какво URL да post-ваш :) . Казвайте ги тези неща. Ние не ги забелязваме, понеже имаме достъп до всичко.
@Стефан
Ми ползвах си URL от мейла и ми гърмеше по този начин. Мислех, че е нарочно и ми се стори нахално да си го поискам 'просто така' :)
Имам забележка относно разделителя на данните - в имената на песента и на изпълнителя може да има точка, което да отмести с едно поле всичките данни.
Питам се дали във входа на същинските тестове разделителя на данните съвпада поне с този формат: \. {2,} ?
П.С. сменил си делимитера от ; на . защото системата за проверката на качеството има "фийчъра" да напипва ; в стринг или дефиниция на регулярен израз като забранен символ?
Имам забележка относно разделителя на данните - в имената на песента и на изпълнителя може да има точка, което да отмести с едно поле всичките данни.
Няма точка в имена на песни, артисти, жанрове и тагове. Нито запетая.
П.С. сменил си делимитера от ; на . защото системата за проверката на качеството има "фийчъра" да напипва ; в стринг или дефиниция на регулярен израз като забранен символ?
Имаше. Първоначално виждаше точка и запетая тук: ";"
, но не и тук: "foo;bar"
. После открих по-адекватен начин да става
Ако имам нужда от метод, който да прави нещо върху Array, кое би било по-удачно:
Нуждата ми е изцяло с цел прегледност (метода е едноредов). Мерси
Monkey patch на Array почти никога не е удачно.
В клас, където го ползваш. Ако не се ползва на повече от едно място, направо inline-вай.
Само на 2 места - в интерес на истината даже не е нищо особено, просто избягвам да пиша едно и също нещо 2 пъти. Окей, мерси, ще си го сложа в класа.
Здравейте, а да попитам как стои въпроса със недовършена задача? Общо взето цял ден я мислих, но все забивах на едно и също място... та така и не успях да я докарам докрай.
Има ли смисъл да качвам код в такъв случай?
@Дарина
Да, стига все пак да минава някакви тестове. Пак печелиш точки от това.
Технически въпрос, който може би е хубаво да се изясни в тоя контекст, за да няма недоволни на края на семестъра: Ако не се предадат n(3?) домашни, губиш всички точки от домашни. Качен код == предадено домашно или трябва да има положителни точки/минати тестове?
Трябва да има минати тестове. Иначе може да качиш един коментар и толкова.
Не би трябвало да е трудно, предвид наличието на примерен тест.
Ще взема да опиша всички тия неща тия дни.
Няма ли да удължите срока на Задача 2 по повод Halloween ;)
Имах малък проблем със skeptik - броеше ми броя редове на двата initialize като редове на един метод и съответно хвърляше грешка.
Няма ли да удължите срока на Задача 2 по повод Halloween ;)
Имах малък проблем със skeptik - броеше ми броя редове на двата initialize като редове на един метод и съответно хвърляше грешка.
Трябва да сте влезли в системата, за да може да отговаряте на теми.