AArcTern
Сценарии

Сценарии работы с кодом · Минимальная знаковая разность углов

03
Вокруг ваших задач

Конкретная отправная точка

Верните кратчайшую знаковую разность углов в градусах от минус 180 включительно до 180 исключительно. Проверьте переход через полный оборот и противоположные углы, отклоняя неконечные значения, логические типы и модули больше 1000000000000 до раздельной нормализации.

01

Откройте контекст

Выберите папку проекта и обозначьте нужные файлы или поведение.

02

Опишите изменение

Укажите входные данные, ожидаемый результат и границы, которые нужно сохранить.

03

Изучите работу

Проверьте предлагаемые изменения и команды, прежде чем полагаться на результат.

04

Проверьте результат

Сравните фактическое поведение с ожидаемым. Если проверка не проходит, разберитесь в причине перед следующими изменениями.

Минимальная знаковая разность углов

Конкретная отправная точка
from math import isfinite

def angle_delta(source, target):
    for value in (source, target):
        if type(value) not in (int, float):
            raise ValueError("angle.number")
        if abs(value) > 1000000000000 or not isfinite(value):
            raise ValueError("angle.range")
    source, target = source % 360, target % 360
    return (target - source + 180) % 360 - 180

Пример — отправная точка для реального проекта, а не утверждение, что сгенерированный код уже протестирован. Адаптируйте пути, зависимости и ожидаемое поведение к своему приложению.

Рабочая среда с ИИ для кода

Здесь начинается ваше следующее изменение.

Скачать для Windows ↗