Это довольно простой вопрос. В соответствии с этим случайным веб-сайтом, который я обнаружил - веб-архивом , эталонный угол - the acute angle formed by the terminal side of the given angle and the x-axis.
вы должны написать программу, чтобы найти их.
Я ничего не помню из алгебры 2, что это значит?
Углы обычно задаются в стандартной форме , которая измеряется путем помещения одной стороны угла и измерения на другую сторону против часовой стрелки, например:
Это будет ваш вклад. Ваш вывод будет исходным углом этого. Вы можете думать об этом как о наименьшем расстоянии от стороны терминала до оси X. За исключением того, что это угол, а не расстояние. Вот некоторые примеры:
Разъяснения
- Все значения по умолчанию на входах и представлениях.
- Углы в градусах .
- Отрицательные углы, нецелые углы и углы> 360 град будут разрешены.
- Вывод в форму
60 deg
. - Это код-гольф , поэтому выигрывает самый короткий код в байтах!
Тестовые случаи
70 -> 70 deg
135 -> 45 deg
210 -> 30 deg
-60 -> 60 deg
91 -> 89 deg
610 -> 70 deg
-1000 -> 80 deg
abs(arcsin(sin(input)))+" deg"
, хотя я не знаю, какой язык победит (он должен был бы поддерживать степени и строковые операции).Ответы:
Pyth, 17 байт
По совпадению, это эквивалентно ответу @ xnor .
Попробуйте онлайн.
источник
Pyth, 18 байт
Попробуйте онлайн.
источник
Python 2, 34 байта
Использование
"%d deg"
форматирования строки будет длиннее из-за необходимых скобок.источник
CJam (21 байт)
Онлайн демо
источник
постоянный ток, 25
Примечание
dc
использует_
знак -ve вместо-
.Тестовый вывод:
источник
Математика,
2231источник
deg
,0 deg
станет0
.Row@{Abs@Mod[#,180,-90],deg}&
Python 2, 35
Чем меньше угол и его отрицательное по модулю
180
. Эффективно преобразует угол в диапазон от 0 до 180 и определяет расстояние до ближайших конечных точек. Обратите внимание, что-x%180
группы как(-x)%180
.Та же длина с форматированием строки для Python 3:
источник
Pyth
2530 байтУж больно не творческое решение, используя тригонометрические функции. Постоянная ссылка
Любые предложения приветствуются.
источник
.t
звонки и складывая их:+.R.t.a.tF[Q7Z3)6?%Q1Q0" deg
90.5 => 90.0 deg
хотя.-60.5 => 60.5 deg
но с60.5 => 60.0 deg
. Похоже, проблема с Pyth - пример использования pyth / macros.pyJavaScript (ES6), 43 байта
Подобно ответу Sp3000 , хотя модуль довольно длинный из-за поведения в JavaScript .
демонстрация
Код переписан в ES5 для совместимости с браузером:
CoffeeScript, 45 байт
источник
%
разумно реализуют .(t=180)
последующей заменой следующих 180 на t, вероятно, сэкономит несколько байтовJ, 26 байт
То же, что и метод xnor .
источник
Матлаб, 44
Использование анонимной функции:
Пример:
источник
Scala,
4035 персонажейисточник
Tcl , 83 байта
Попробуйте онлайн!
источник
PHP, 44 байта
Принимает один параметр командной строки. Снова PHP страдает той же проблемой, что и JavaScript .
Для использования канонического решения требуется 53 байта (преобразование градусов и радианов занимает много символов):
источник
.
для объединения?.
. Понижено, пока это не исправлено