Solucionador de triángulos ABC: lados y ángulos de cualquier combinación
El solucionador de triángulos ABC toma cualquier combinación de lados a, b, c y ángulos interiores A, B, C que determine un triángulo y devuelve los lados y ángulos que usted no proporcionó.
Ejecutar — gratis
Aplica la ley de cosenos y la ley de senos en el orden adecuado para cada caso —tres lados, dos lados con el ángulo comprendido, dos ángulos con cualquier lado, o dos lados con un ángulo no comprendido— y rechaza las entradas que no describen ningún triángulo, que describen varios triángulos o que contienen valores contradictorios entre sí. Los ángulos se indican y se devuelven en grados; cada resultado se redondea a diez decimales estables, de modo que la misma entrada siempre produce la misma salida.
Un único punto de acceso para toda combinación resoluble
La trigonometría de los libros de texto divide la resolución de triángulos en cinco recetas distintas —SSS, SAS, ASA, AAS y el incómodo caso SSA— y cada una tiene su propio formulario. Este solucionador de triángulos reúne las cinco en una sola solicitud: usted envía los campos que conozca entre side_a, side_b, side_c, angle_a, angle_b y angle_c, y el solucionador determina qué receta corresponde. Tres lados conocidos activan la ley de cosenos; dos lados con el ángulo entre ellos utilizan la regla del coseno una vez y la del seno después; cualquier lado acompañado de dos ángulos es un problema directo de la ley de senos. Usted nunca tiene que nombrar el caso por sí mismo, y la respuesta siempre incluye un campo <em>method</em> que registra el camino seguido, lo cual resulta útil al registrar o almacenar en caché los resultados. Como la interfaz es uniforme, el mismo código cliente resuelve la inclinación de un tejado, un levantamiento topográfico y un ejercicio de tarea sin ramificarse según la combinación.
La coherencia se verifica, no se da por supuesta
Las mediciones reales no siempre concuerdan. Si usted envía más de los tres valores que un triángulo necesita estrictamente —por ejemplo, los tres lados más un ángulo medido sobre el terreno—, el solucionador no ignora silenciosamente el excedente. Primero resuelve el triángulo a partir de un subconjunto determinante y después verifica cada valor restante contra esa solución dentro de una tolerancia estricta. Un valor que contradiga al resto produce un error explícito que nombra el campo, en lugar de un triángulo de aspecto plausible que solo satisface en secreto una parte de su entrada. La misma disciplina detecta los fallos clásicos antes de que ocurra cualquier cálculo: tres ángulos que no suman 180 grados, tres lados que violan la desigualdad triangular, un par SSA cuyo lado opuesto al ángulo conocido es demasiado corto para alcanzarlo, y el caso SSA ambiguo en el que dos triángulos genuinamente distintos se ajustan a los datos. En esta última situación el solucionador lo indica y pide una medición adicional, en lugar de elegir un ganador que usted no eligió.
Cómo integrarlo
Envíe un objeto JSON con los campos conocidos como números —las cadenas numéricas también se aceptan— y lea el triángulo completo como respuesta: los tres lados, los tres ángulos en grados, la unidad angular y el método empleado. Las piezas que faltan se completan; las que usted proporcionó se devuelven tal cual, de modo que la respuesta constituye un registro completo y autocontenido del triángulo. Todo se calcula de forma determinista con aritmética de doble precisión y se redondea a diez decimales, lo que hace que la salida sea segura para comparar byte a byte en pruebas y cachés. La capacidad se ejecuta en nuestra red global de borde sin persistir nada, y exactamente el mismo módulo funciona gratis en su navegador en esta página, de modo que puede prototipar un cálculo a mano y solo pagar $0.002 por solicitud cuando lo automatice. No hay recargo por unidad: una solicitud entrante, un triángulo resuelto saliente, $0.002.
Qué puede hacer con ella
Verificar un levantamiento topográfico
Envíe los lados y ángulos medidos juntos; cualquier valor que contradiga al resto se señala en lugar de promediarse.
Dimensionar un tejado o un refuerzo
Dos lados y el ángulo comprendido proporcionan el tercer lado y los ángulos restantes para una lista de cortes en una sola llamada.
Calificar ejercicios de geometría
Compare el triángulo completado por un estudiante con la salida estable y redondeada del solucionador para problemas SSS, SAS, ASA y AAS.
Preguntas frecuentes
¿Cuánto cuesta?
$0.002 por solicitud. También es gratuito ejecutarlo en su navegador en esta página.
¿Qué combinaciones de valores puedo enviar?
Cualquiera que determine un triángulo: tres lados, dos lados con el ángulo comprendido, dos ángulos con cualquier lado, o dos lados con un ángulo no comprendido. También puede enviar valores adicionales; se verificará su coherencia.
¿Qué ocurre con el caso SSA ambiguo?
Cuando dos triángulos distintos se ajustan a dos lados y un ángulo no comprendido, la solicitud se rechaza con un error que pide un lado o un ángulo más, en lugar de adivinar.
¿Los ángulos están en grados o en radianes?
En grados, tanto en la entrada como en la salida. Los ángulos interiores deben ser positivos y menores que 180.
¿Por qué recibí un error de 'entrada incoherente'?
Porque uno de los valores que envió contradice al triángulo definido por los demás más allá de una pequeña tolerancia —por ejemplo, un ángulo que no coincide con tres lados medidos. Vuelva a comprobar esa medición.
¿Puedo resolver un triángulo solo con tres ángulos?
No. Los ángulos fijan la forma pero no el tamaño, por lo que se requiere al menos un lado; el solucionador devuelve un error que lo explica.
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/math/abc-triangle \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"side_a":3,"side_b":4}'const res = await fetch("https://api.kit.forhosting.com/math/abc-triangle", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"side_a": 3,
"side_b": 4
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/abc-triangle",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"side_a": 3,
"side_b": 4
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/abc-triangle", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"side_a":3,"side_b":4}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"side_a":3,"side_b":4}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/abc-triangle", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"side_a": 3,
"side_b": 4
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.abc_triangle",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |