timeit

Програмиране с Python

Курс във Факултета по Математика и Информатика към СУ

Как да (не) си изпращаме задачите

Тук ще намерите кратки (или не толкова кратки) инструкции за това как да си изпращате задачите.

Накракто

  • Прочетете си условието внимателно и дори няколко пъти.
  • След като сте написали решение, изпълнете примерния тест.
  • Преди да опитате да изпратите решение през сайта, изпълнете стилистическата проверка на вашия компютър.
  • Не споделяйте решението си с никого.
  • Не гледайте чужди решения.

Преписване и споделяне на решения

Всички решения стават публични след крайния срок на задачата. Преди това всякакво споделяне на решения е забранено.

Това включва:

  • Да пратите решението си на някой друг.
  • Да го покажете на другарче, за да "почерпи идеи".
  • Да го сложите някъде публично преди крайния срок (например GitHub).

Ако хванем, че сте преписвали, ви късаме без много-много обяснения и губите всичките си точки от задачи. Когато се видим през септември, схемата за оценява продължава да важи за вас и вие продължавате да имате 0 точки от задачи. Това означава, че се борите за 3 или 4. Ако сте много нахални, санкциите могат да бъдат по-тежки.

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

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

От какво имате нужда

Ако пращате задача за първи път, първо се уверете, че използвате Python 3.5.1

$ python -V
Python 3.5.1

Ако версията e различна, значи сте на грешна. Качете си Python 3.5, понеже има достатъчно разлики, за да работи едно решение при вас, но да не работи при нас.

Забележка: На някои системи, които имат инсталирани Python 2.x и 3.x вероятно е нужно да изпълнявате командите с python3.5.

Примерен тест

С всяка задача публикуваме примерен тест в GitHub хранилището. Запишете решението си като solution.py и задължително изтеглете теста и го пуснете.

$ python sample_test.py

PEP 8

Както вече казахме на първата лекция, изключително много държим на качествен код, а не прост работещ. Когато пишете на Python е задължително да спазвате препоръките на PEP 8. Това също ще се тества и ще Ви бъдат отнемани точки, при неспазването на което и да от правилата, написани в този документ.