This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
courses:programming:pr_cw_spring_requirements [2024/03/27 18:04] sergey_tinyakov [Обязательные флаги] |
courses:programming:pr_cw_spring_requirements [2024/04/26 23:29] (current) sergey_tinyakov |
||
---|---|---|---|
Line 6: | Line 6: | ||
Если сборка курсовой работы реализована через системы автоматизации, то программа с курсовой работы должна называться **''cw''**! | Если сборка курсовой работы реализована через системы автоматизации, то программа с курсовой работы должна называться **''cw''**! | ||
+ | |||
+ | ===== Оси координат и начало отсчёта ===== | ||
+ | |||
+ | Началом оси координат является **верхний левый угол**. Ось X расположена __по горизонтали и растёт вправо__. Ось Y расположена __по вертикали и растёт вниз__ | ||
===== Обязательные флаги ===== | ===== Обязательные флаги ===== | ||
Line 22: | Line 26: | ||
* Если флаг отвечает за координаты для рисования (например, для рисования линии) и координаты находится вне границ изображения, то необходимо **продолжить обработку** так, как если бы можно было выходить за рамки изображения. Пример: допустим на вход подано изображение размером ''100x100'' пикселей, начало отрезка ''0.0'', а конец отрезка ''200.200''. В таком случае должна быть нарисована диагональ. Если же начало отрезка было ''150.130'', то на изображении ничего не должно быть нарисовано, так как линия проходить за границами обрабатываемого изображения | * Если флаг отвечает за координаты для рисования (например, для рисования линии) и координаты находится вне границ изображения, то необходимо **продолжить обработку** так, как если бы можно было выходить за рамки изображения. Пример: допустим на вход подано изображение размером ''100x100'' пикселей, начало отрезка ''0.0'', а конец отрезка ''200.200''. В таком случае должна быть нарисована диагональ. Если же начало отрезка было ''150.130'', то на изображении ничего не должно быть нарисовано, так как линия проходить за границами обрабатываемого изображения | ||
* Если флаг отвечает за координаты для области и координаты находится вне границ изображения, то необходимо **продолжить обработку** до максимально/минимально возможного значения координат | * Если флаг отвечает за координаты для области и координаты находится вне границ изображения, то необходимо **продолжить обработку** до максимально/минимально возможного значения координат | ||
- | * Если были введены аргументы для флага, который не принимает аргументов, то | + | * Если были введены аргументы для флага, который не принимает аргументов или введены лишние аргументы, то |
* **Завершить работу** с ошибкой | * **Завершить работу** с ошибкой | ||
* **Вывести пользователю сообщение**, что данные аргументы будут проигнорированы. Например, ''Аргументы 'best_arg' и 'another_best_arg' проигнорирован, так как флаг '--info' не принимает аргументов'' | * **Вывести пользователю сообщение**, что данные аргументы будут проигнорированы. Например, ''Аргументы 'best_arg' и 'another_best_arg' проигнорирован, так как флаг '--info' не принимает аргументов'' | ||
* Если введён аргумент, который не соответствует ожидаемому шаблону, то необходимо **завершить работу** с ошибкой | * Если введён аргумент, который не соответствует ожидаемому шаблону, то необходимо **завершить работу** с ошибкой | ||
* Если введён некорректный флаг или не хватает флагов для задания параметров, то необходимо **завершить работу** с ошибкой | * Если введён некорректный флаг или не хватает флагов для задания параметров, то необходимо **завершить работу** с ошибкой | ||
+ | * Если имена входного и выходного файлов совпадают, то необходимо **завершить работу** с ошибкой | ||
===== Необязательные дополнения к курсовой работе ===== | ===== Необязательные дополнения к курсовой работе ===== |