Сравнение версий Информатика / Правила Написания Программ
|
← Предыдущая правка
|
Следующая правка →
|
| Version1 | Version2 | Differences |
|---|---|---|
| 4 | 4 | cpplint.py --filter=-legal,-readability/streams,-build/namespaces,-whitespace/braces,-whitespace/newline,-whitespace/line_length,-runtime/int,-runtime/threadsafe_fn,-readability/casting,-build/include_what_you_use,-runtime/arrays,-runtime/explicit,-build/include,-readability/fn_size,-runtime/printf,-whitespace/comments,-runtime/references,-readability/braces |
| 5 | 5 | %% |
| 6 | 6 | |
| 7 | Для Python используется утилита ((https://github.com/jcrocholl/pep8 pep8.py)) с ключами | |
| 8 | %% | |
| 9 | pep8.py -r --show-source --ignore=W391,E251,E501,W292,W291,W293 | |
| 10 | %% | |
| 7 | Для Python используется утилита ((https://github.com/ShashkovS/flake8_ejudge flake8_ejudge)) | |
| 11 | 8 | |
| 12 | 9 | Очень полное и подробное описание требований к коду на C++ содержится в ((https://tproger.ru/translations/stanford-cpp-style-guide/ руководстве по оформлению кода на С++ от Стэнфордского университета)) |
| 13 | 10 | |
| 14 | 11 | ===Python=== |
| 15 |
Помимо сформулированных ниже правил, программы должны соответствовать документу ((http://www.python.org/dev/peps/pep-0008/ PEP8: Style Guide for Python Code)) из официальной документации языка Python |
|
| 12 | Помимо сформулированных ниже правил, программы должны соответствовать документу ((http://www.python.org/dev/peps/pep-0008/ PEP8: Style Guide for Python Code)) из официальной документации языка Python (возможны отступления в части некоторых правил). | |
| 16 | 13 | |
| 17 | 14 | ====Символы и отступы=== |
| 18 | 15 | Величина отступа - четыре пробела. Использование символа табуляции (символа, с кодом 9) запрещается. |
| … | … | … |
| 60 | 57 | %% |
| 61 | 58 | |
| 62 | 59 | ====Использование констант=== |
| 63 |
|
|
| 64 | 60 | Не допускается использование чисел в программе, значение которых неочевидно. Например, запись while i < 179 или c = c + 32 недопустима. |
| 61 | ||
| 62 | ====Комментарии==== | |
| 63 | Комментарии в программах нужны для пояснения работы кода. Недопустимо использование комментариев для других целей, например, для удаления ненужного кода или для ASCII-арта. | |
| 64 | ||
| 65 | ====Комментарии==== | |
| 66 | Комментарии в программах нужны для пояснения работы кода. Недопустимо использование комментариев для других целей, например, для удаления ненужного кода или для ASCII-арта. | |
| 65 | 67 | |
| 66 | 68 | ===C++=== |
| 67 | 69 | |
| … | … | … |
| 107 | 109 | %% |
| 108 | 110 | |
| 109 | 111 | ====Стиль отступов=== |
| 110 |
|
|
| 111 | 112 | =====if==== |
| 112 |
|
|
| 113 | 113 | Оператор if без else записывается так: |
| 114 | 114 | %%(java) |
| 115 | 115 | if (test) |
| … | … | … |
| 191 | 191 | Блоки инструкций ветвления и цикла всегда заключаются в фигурные скобочки, даже если они состоят из одной инструкции. |
| 192 | 192 | |
| 193 | 193 | ====Использование констант=== |
| 194 |
|
|
| 195 | 194 | Не допускается использование чисел в программе, значение которых неочевидно. Например, запись while (i < 179) недопустима. |
| 196 | 195 | |
| 197 | 196 | ====Ввод-вывод=== |
| … | … | … |
| 201 | 200 | |
| 202 | 201 | При выводе результата работы на стандартный поток вывода или в текстовый файл вывод должен заканчиваться символом перехода на новую строку. Исключением являются программы, выполняющие посимвольную обработку потока данных. |
| 203 | 202 | |
| 203 | ====Комментарии==== | |
| 204 | Комментарии в программах нужны для пояснения работы кода. Недопустимо использование комментариев для других целей, например, для удаления ненужного кода или для ASCII-арта. | |
| 205 | ||
| 206 | ====#define==== | |
| 207 | Никакие #define не нужны. Для определения констант нужно использовать const, вместо макросов нужно использовать функции, #define int long long не нужно вообще. | |
| 208 | ||
| 209 | ====typedef==== | |
| 210 | typedef скорее всего не нужны ни в каком виде. Нельзя переопределять стандартные типы при помощи typedef, а больше ни для чего typedef не нужен. | |
| 211 | ||
| 212 | ====#pragma==== | |
| 213 | Никакие #pragma не нужны. | |
| 214 |