Вход | Регистрация

Пета задача

  • Браво! :) Ама да бяхте казали малко по-рано :) Омацах яко кода последния 1 час, за да пасната повечко тестове... И все пак по-добре след 3 дни - ще имам време да рефакторна и фиксна каквото остава :)

    Сега го решихме :)

    17.05.2009
  • Thumbs_up

    Трябва ли да escape-ваме двойни кавички в адреса на хипервръзка (както knower-а прави)?

    Тези блокове валидни цитати ли са?

    1:

    >
    >галош

    2:

    >  
    >  кофа

    3:

    >  
    > бастун

    Т.е. възможно ли е да тествате с такива?

    17.05.2009 (променeно 17.05.2009)
  • Първия и последния са невалидни, за втория виж knower-a се дъни

    17.05.2009
  • Съдържанието (т.е. параграф, код или вложен цитат) на даден цитат не трябва ли да започва след последната последователност от > и точно един whitespace на всеки ред (като следващите редове имат същото начало като първия, за да е консистентно отместването)? Например:

    >..code
    >..code

    или

    >...>..>...code
    >...>..>...code

    (точките са space-ове) не са ли блокове код в началото на цитат, а не параграфи (knower-ът ги интерпретира като параграфи)?

    И още нещо:

    >.>.blq
    >.>.blq
    >
    >.>.>.blq
    >
    >.>.>...blq
    >.>.>...blq

    валидно ли е, т.е. това колко > има в един празен ред трябва ли да зависи от текущата степен на вложеност или не? Според knower-а така е ок.

    Дано да не звучи твърде объркано това, което питам.

    19.05.2009 (променeно 19.05.2009)
  • Моля ви обяснете защо трябва да сме съгласни с:

    >.lq

    >...#тук има празни места

    >.lq

    <blockquote><p>lq

    lq</p></blockquote>

    Аз виждам цитат от два реда с текст разделени с един празен ред т.е. два параграфа. "Има", а не "няма" пише в коментара.

    19.05.2009 (променeно 19.05.2009)
  • Този "празен ред" не е празен ред, а е ред с интервали. Щеше да се смята за празен, ако съдържаше само ">" последван от нов ред "\n". В примерите към условието на задачата има такъв случай, като твоя.

    19.05.2009 (променeно 19.05.2009)
  • @Станислава:

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

    Това колко > има в един празен ред зависи от текущата степен на вложеност.

    @Людмил:

    Идеята на условието е, че не трябва да отместваме празни редове, а можем да изпуснем интервалите в тях. Ако все пак сложим отместване, интервалите след него се интерпретират като част от блока. Ефекта се получава защото:

    Това не са два
      
    параграфа. Понеже на горният ред има интервали.
    19.05.2009
  • При блоковете код, следните входове:

    ..ghhgf
    .
    ..mkj
    ..ghhgf
    ..
    ..mkj
    ..ghhgf
    ...
    ..mkj

    дават един и същ изход :

    <pre><code>ghhgf
    .
    mkj</code></pre>

    (Навсякъде . да се чете 1 интервал)

    Ще се радвам да разбера по каква логика, остава въпросният 1 брой интервал между двата реда в изхода.

    П.П. Ще се радвам и на отговор на предишния ми въпрос за хипервръзката.

    19.05.2009 (променeно 19.05.2009)
  • Това със спейсовете и блоковете според мен е проблем на knower-а, както и при цитатите, когато пишеш >. без да добавяш non-whitespace символи и не го приема за коректен вход. Някой ще ни каже ли защо се случват тези неща? Бъг в самата функция markup, която knower-а ползва или е нещо странично (от чисто любопитство питам)?

    19.05.2009 (променeно 19.05.2009)
  • Аз до колкото тествам, за цитатите има проблем само, ако >. е 1вият ред. Иначе, ако е в средата или в края е нормално (или поне намирам смисъл да дава резултата). Тук защо точно 1 интервал реши да сложи, в 2 от случаите, не ми е понятно.

    19.05.2009 (променeно 19.05.2009)
  • Не знам, аз направих паралел с бъга при цитатите, защото ако сложиш non-whitespace след единия интервал в първия ти пример дава Exception както се очаква.

    Някой да излезе със становище по въпроса, моля.

    19.05.2009 (променeно 19.05.2009)
  • Thumbs_upThumbs_upThumbs_upThumbs_upThumbs_upThumbs_upThumbs_upThumbs_upThumbs_upThumbs_upThumbs_upThumbs_up

    Веднага излизам със становище относно цялата задача.

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

    Това е задача за проваляне на повечето (да не кажа почти всички), които са решили да се пробват да я направят. Пълна е с неясноти и "корнър кейсове" отвсякъде.

    19.05.2009
  • Дотук 3 бъга в knower-а, пък и е смешно makrup функция да дава exception при какъвто и да е вход.

    20.05.2009
  • Не се впрягай толкова, че задачата е пълна с корнър кейсове... Направи достатъчно тестовете да минават, хвани някой друг по-явен корнър кейс и си мисля, че ще получиш много точки :) Все пак, ако задачата има толкова много корнър кейсове - можете ли да си представите на преподавателите колко време ще отнеме да напишат тестове за всички :)

    20.05.2009
  • ...

    20.05.2009 (променeно 21.05.2009)