Esta es una pregunta bastante simple. De acuerdo con este sitio web aleatorio que encontré: Archivo web , un ángulo de referencia es the acute angle formed by the terminal side of the given angle and the x-axis.
que debe escribir un programa para encontrarlos.
No recuerdo nada del álgebra 2, ¿qué significa esto?
Los ángulos generalmente se dan en forma estándar , que se mide colocando un lado del ángulo y midiendo al otro lado, en sentido antihorario, de la siguiente manera:
Esta será tu aportación. Su salida será el ángulo de referencia de esto. Puede pensar en esto como básicamente la distancia más pequeña desde el lado terminal al eje x. Excepto que es un ángulo, no una distancia. Aquí hay unos ejemplos:
Aclaraciones
- Todos los valores predeterminados en entradas y envíos.
- Los ángulos están en grados .
- Los ángulos negativos, ángulos no enteros, y los ángulos> 360 grados están permitidos.
- Salida en forma
60 deg
. - Este es el código de golf , por lo que gana el código más corto en bytes.
Casos de prueba
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"
, aunque no sé qué idioma ganaría (necesitaría admitir grados y operaciones de cadena).Respuestas:
Pyth, 17 bytes
Casualmente, esto es equivalente a la respuesta de @ xnor .
Pruébalo en línea.
fuente
Pyth, 18 bytes
Pruébalo en línea.
fuente
Python 2, 34 bytes
El uso del
"%d deg"
formato de cadena sería más largo debido a los paréntesis necesarios.fuente
CJam (21 bytes)
Demostración en línea
fuente
dc, 25
Nota
dc
usos_
como un signo -ve en lugar de-
.Prueba de salida:
fuente
Mathematica,
2231fuente
deg
,0 deg
convertiré0
.Row@{Abs@Mod[#,180,-90],deg}&
Pitón 2, 35
El más pequeño del ángulo y su módulo negativo
180
. Convierte efectivamente el ángulo al rango de 0 a 180 y toma la distancia al punto más cercano de los puntos finales. Tenga en cuenta que los-x%180
grupos como(-x)%180
.Misma longitud con formato de cadena para Python 3:
fuente
Pyth
2530 bytesSolución dolorosamente poco creativa, utilizando funciones trigonométricas. Enlace permanente
Cualquier sugerencia bienvenida.
fuente
.t
llamadas y poniéndolas en un pliegue:+.R.t.a.tF[Q7Z3)6?%Q1Q0" deg
90.5 => 90.0 deg
.-60.5 => 60.5 deg
pero con60.5 => 60.0 deg
. Se parece a un problema con Pyth - Ejemplo utilizando Pyth / macros.pyJavaScript (ES6), 43 bytes
Al igual que en la respuesta de SP3000 , aunque el módulo es bastante largo debido al comportamiento en JavaScript .
Manifestación
El código se reescribe en ES5 para la compatibilidad del navegador:
CoffeeScript, 45 bytes
fuente
%
sensata.(t=180)
luego reemplazar los siguientes 180 con t probablemente ahorraría unos pocos bytesJ 26 bytes
Igual que el método de xnor .
fuente
Matlab, 44
Usando una función anónima:
Ejemplo:
fuente
Scala,
4035 Personajesfuente
Tcl , 83 bytes
Pruébalo en línea!
fuente
PHP, 44 bytes
Toma un parámetro de línea de comando. Una vez más, PHP sufre el mismo problema que JavaScript .
El uso de la solución canónica requiere 53 bytes (la conversión de grados y radianes requiere muchos caracteres):
fuente
.
para la concatenación?.
. Voto negativo hasta que se arregle