Сравнение версий Информатика / Правила Написания Программ




← Предыдущая правка
Следующая правка →

Version1 Version2
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 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)) с ключами 7 Для Python используется утилита ((https://github.com/ShashkovS/flake8_ejudge flake8_ejudge))
8 %%    
9 pep8.py -r --show-source --ignore=W391,E251,E501,W292,W291,W293    
10 %%    
11 8
12 Очень полное и подробное описание требований к коду на C++ содержится в ((https://tproger.ru/translations/stanford-cpp-style-guide/ руководстве по оформлению кода на С++ от Стэнфордского университета)) 9 Очень полное и подробное описание требований к коду на C++ содержится в ((https://tproger.ru/translations/stanford-cpp-style-guide/ руководстве по оформлению кода на С++ от Стэнфордского университета))
13 10
14 ===Python=== 11 ===Python===
15 Помимо сформулированных ниже правил, программы должны соответствовать документу ((http://www.python.org/dev/peps/pep-0008/ PEP8: Style Guide for Python Code)) из официальной документации языка Python. При сдаче задачи в ejudge проводится автоматическая проверка на соответствие программы PEP8. 12 Помимо сформулированных ниже правил, программы должны соответствовать документу ((http://www.python.org/dev/peps/pep-0008/ PEP8: Style Guide for Python Code)) из официальной документации языка Python (возможны отступления в части некоторых правил).
16 13
17 ====Символы и отступы=== 14 ====Символы и отступы===
18 Величина отступа - четыре пробела. Использование символа табуляции (символа, с кодом 9) запрещается. 15 Величина отступа - четыре пробела. Использование символа табуляции (символа, с кодом 9) запрещается.
… … … …
60 %% 57 %%
61 58
62 ====Использование констант=== 59 ====Использование констант===
63    
64 Не допускается использование чисел в программе, значение которых неочевидно. Например, запись while i < 179 или c = c + 32 недопустима. 60 Не допускается использование чисел в программе, значение которых неочевидно. Например, запись while i < 179 или c = c + 32 недопустима.
    61
    62 ====Комментарии====
    63 Комментарии в программах нужны для пояснения работы кода. Недопустимо использование комментариев для других целей, например, для удаления ненужного кода или для ASCII-арта.
    64
    65 ====Комментарии====
    66 Комментарии в программах нужны для пояснения работы кода. Недопустимо использование комментариев для других целей, например, для удаления ненужного кода или для ASCII-арта.
65 67
66 ===C++=== 68 ===C++===
67 69
… … … …
107 %% 109 %%
108 110
109 ====Стиль отступов=== 111 ====Стиль отступов===
110    
111 =====if==== 112 =====if====
112    
113 Оператор if без else записывается так: 113 Оператор if без else записывается так:
114 %%(java) 114 %%(java)
115 if (test) 115 if (test)
… … … …
191 Блоки инструкций ветвления и цикла всегда заключаются в фигурные скобочки, даже если они состоят из одной инструкции. 191 Блоки инструкций ветвления и цикла всегда заключаются в фигурные скобочки, даже если они состоят из одной инструкции.
192 192
193 ====Использование констант=== 193 ====Использование констант===
194    
195 Не допускается использование чисел в программе, значение которых неочевидно. Например, запись while (i < 179) недопустима. 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