Софтуерно Инженерство
Loading...
+ Нов въпрос
georgi.stef.georgiev avatar georgi.stef.georgiev 916 Точки

Решения, тестове на изпита на 21 май 2017 - и отваряне на системата за практика

Здравейте колеги,

В shared папката в Dropbox съм ви публикувал целите задачи от днескашния изпит - условия, решения, тестове, скелети:

https://www.dropbox.com/sh/xxvi4n1twv1vqy0/AADKEy7pG7iPXEa6lKMBr8QOa?dl=0

Също така състезанието е отворено за практика ако искате да пререшите задачите, или да се подготвите допълнително за следващия изпит на 28-ми.

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

Поздрави,

Жоро

Тагове:
3
C++ Programming
tsvetanpopharitov avatar tsvetanpopharitov 1 Точки

Въпрос:  Във втората задача какво са rangeFirst и rangeLength. Ако можеше по някое обяснение към решенията щеше да е хубаво. Просто не само лекциите за подготовка бяха малко ами и като си онлайн-ер малко ти е всичко още по-трудно за практикуване и схващане.

0
p.yordanov avatar p.yordanov 51 Точки

rangeFirst ти е първото число в масива, а rangeLength - дължината му.

Със rangeFirst може да смяташ offset-а на масива.

0
georgi.stef.georgiev avatar georgi.stef.georgiev 916 Точки

rangeFirst: най-малкото число, което е било добавено в Range-а,

rangeLength: 1 + разстоянието (абсолютната стойност на разликата) между rangeFirst и най-голямото число добавено в Range-а

Но това важи за авторското решение само. Като цяло задачата е направена така, че може тези стойности да ги направите да означават каквото си искате. Предназначени са за това, което съм описал горе, но в програмирането, особено в реализирането на някакви структури данни, вътрешната имплементация на нещо може да бъде направена по много различни начини. Единственото, което е задължително, е даденият код (ConstValueIterator-а и main() функцията) правилно да работи в комбинация с вашата имплементация и да решава задачата описана в условието (от множество въведени масиви от числа, да се изведе този с най-много срещания на определено число, сортиран във възходящ ред).

Case in point, предвид входните данни на тази задача и начина, по който ConstValueIterator-а работи, в едно работещо решение е вариант rangeFirst може винаги да бъде -100, rangeLength винаги да бъде 201 ("Numbers in the input data are from -100 to 100") и така написана структурата най-вероятно пак би работила вярно (и няма да се налага да се справяте със ситуации, в които range-а трябва да се "разшири" - това btw изяде главите на много хора на изпита).

Като цяло идеята на тази задача е да прегледате дадения код и да напишете такава имплементация, която да работи с дадения код. Тоест част от задачата е вие да прецените кои членове как да имплементирате. Разбира се, на изпита времето е ограничено, затова в началото на изпита давам кратко обяснение на идеята на всяка задача, а по времето на целия изпит съм на място за въпроси (това беше така на този изпит и ще бъде така на следващия, на 28 май).

Иначе съм съгласен, че да има обяснения към решенията щеше да е добре. Дори бих казал, че всички Judge Assignments, както и всичко решения на изпити, трябва да си имат по видео за всяка задача, което обяснява решението и начинът, по който се стига до него (т.е. нещо като видеото от лекцията за подготовката за изпит). За съжаление просто не остава време за такива неща. Правенето на един изпит/лекция както трябва си отнема около седмица време, когато го правиш вечерите след работа - и съответно не остава време за допълнителни материали.

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

Поздрави,

Жоро

1
22/05/2017 12:08:28
Dimitar_Petkov_Petkov avatar Dimitar_Petkov_Petkov 156 Точки

Супер задачки Жоро. Искаш пак да ни видиш и на поправката :) Обещай че ще бъдат по-гадни задачите !

0
p.yordanov avatar p.yordanov 51 Точки

Привет Жоро,

Имаш ли някаква информация дали и кога ще можем да си погледнем точките, за да знаем дали да идваме на поправка :)

0
georgi.stef.georgiev avatar georgi.stef.georgiev 916 Точки

Здравей,

Надявам се до ден-два да можем да ги изкараме, ще ви пиша във форума веднага като имаме нещо готово.

Поздрави,

Жоро

2
p.yordanov avatar p.yordanov 51 Точки

Резултатите от първия изпит излезнаха smiley

1
georgi.stef.georgiev avatar georgi.stef.georgiev 916 Точки

Това ще прозвучи смешно идващо от мен, ама къде? :D Аз им бях писал, но не съм получавал отговор от тях - мейли ли получихте, или нещо в системата? Можеш ли да paste-неш някакво инфо тук :) ?

0
p.yordanov avatar p.yordanov 51 Точки

 Хаха, ами в Профил -> Обучения -> Отворени курсове ->   C++ Programming направо ми е излязла оценката.

Мейл иначе не съм получвал, но днес си следях следобяд профила и първо ми излязоха точките от изпита, а вечерта като проверих беше излязла и пълната оценка

1
25/05/2017 20:30:21
MartinBG avatar MartinBG 780 Точки

И при мен излязоха резултатите.

При теб как е положението с допълнителните точки? Забелязах, че имам само 15 от 20 възможни  точки от домашни, а съм предал всчки домашни в срок. Не че 5 точки ще направят голяма разлика при повторен провал на изпита, но все пак ми е странно защо нямам макс. точки от домашни.

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

0
LubomirSlavov avatar LubomirSlavov 3 Точки

Изпита от 28ми, ще бъде ли пуснат за практика?

0
georgi.stef.georgiev avatar georgi.stef.georgiev 916 Точки

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

Поздрави,

Жоро

0