Calculadora de barco y corriente
Un barco que va a 10 en aguas tranquilas con una corriente de 2 avanza a 8 río arriba y a 12 río abajo. Resuelva el problema en ambos sentidos: desde las velocidades del barco y la corriente, o desde las de subida y bajada. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Modo de cálculo
- Desde las velocidades del barco y la corriente
- Velocidad del barco en agua quieta
- 10
- Velocidad de la corriente
- 2
- Velocidad contra la corriente
- 8
- Velocidad a favor de la corriente
- 12
Convierte entre la velocidad del barco en agua quieta, la de la corriente y las velocidades a favor y en contra. Gratis, determinista y privado en su navegador. Sin cuenta.
Cómo se relacionan las velocidades de barco y corriente
En los problemas clásicos de cuantitativos un barco se mueve en agua quieta a velocidad b mientras una corriente fluye a velocidad s. Cuando el barco navega río arriba, contra la corriente, la velocidad efectiva es b menos s; cuando va río abajo las velocidades se suman y la efectiva es b más s. El problema inverso parte de las velocidades medidas a favor y en contra, u y d, y recupera la del barco como su media y la de la corriente como la mitad de su diferencia.
Cada entrada debe ser un número finito; el barco debe ser estrictamente positivo, la corriente no negativa y, en el modo directo, el barco debe superar a la corriente para que la velocidad río arriba siga siendo positiva. En el modo inverso, tanto río arriba como río abajo deben ser positivos y río abajo debe superar a río arriba. Nada se infiere de forma estadística; el álgebra es exacta bajo las hipótesis de velocidades constantes.
Entradas, salidas y contratos estables
Los campos obligatorios dependen del modo. Las capas de presentación pueden convertir cadenas numéricas del formulario antes de llamar a solve, pero el núcleo nunca convierte basura en NaN en silencio. La carga útil de éxito siempre repite el modo y los cuatro campos de velocidad para que las métricas de interfaz se enlacen sin adivinar nombres.
Los objetos vacíos, los rangos contradictorios y los valores no finitos se rechazan pronto. Revise los tres ejemplos dorados antes de integrar: un éxito directo con barco diez y corriente dos que produce río arriba ocho y río abajo doce, la recuperación inversa de los mismos números, y un caso rechazado donde la corriente supera al barco. La autoría no estampa id; el compilador asigna identificadores cuando la casa integra la capacidad en el catálogo contiguo.
Casos límite, uso docente y límites
Exige que el barco sea más rápido que la corriente para que la velocidad río arriba siga siendo positiva en el sentido directo. La corriente cero está permitida y simplemente hace que río arriba y río abajo coincidan con el barco. Las velocidades negativas se rechazan porque no modelan el marco clásico de agua quieta más corriente.
Un río arriba igual a río abajo forzaría corriente nula, pero el modo inverso exige que río abajo sea estrictamente mayor para mantener el contrato simple y los dorados inequívocos. Un profesor puede recorrer con el alumnado el caso de agua quieta diez con corriente dos hasta río arriba ocho y río abajo doce, e invertir el par para recuperar los originales. Los guiones de automatización llaman a la misma función pura sin instalar una hoja de cálculo ni un sistema de álgebra computacional.
Los resultados son estables entre navegador y borde porque el redondeo está documentado y es compartido. El autor samurai mantiene la copia del taller; la integración y el despliegue a producción siguen siendo responsabilidad de la casa tras la verificación en verde.
Qué puede hacer con ella
Deberes y exámenes
Compruebe problemas clásicos de barco y corriente con respuestas estables y reproducibles.
Automatización
Llame a la misma función pura desde guiones sin instalar una hoja de cálculo ni un CAS.
Preguntas frecuentes
¿Es gratis?
Sí. El nivel A se ejecuta por completo en su navegador sin cuenta.
¿Llama a la red?
No. El motor parse mantiene el cálculo en el dispositivo.
¿Los resultados son estables?
Sí. La matemática determinista y los ejemplos dorados congelan el contrato.
¿Cómo hallo la velocidad del barco en aguas tranquilas a partir de las velocidades río arriba y río abajo?
Calcule su media. Con 8 río arriba y 12 río abajo, el barco va a 10 en aguas tranquilas, y la corriente es la mitad de la diferencia entre ambas, es decir, 2.
¿Por qué el barco tiene que ir más rápido que la corriente?
Porque río arriba la corriente se resta de la velocidad del barco. Si la corriente fuera igual o más rápida, la velocidad río arriba sería cero o negativa y el barco no avanzaría, algo que el problema clásico no admite.
Herramientas relacionadas
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/boat-stream \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"mode":"from_boat_stream","boat":1}'const res = await fetch("https://api.kit.forhosting.com/math/boat-stream", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"mode": "from_boat_stream",
"boat": 1
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/boat-stream",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"mode": "from_boat_stream",
"boat": 1
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/boat-stream", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"mode":"from_boat_stream","boat":1}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"mode":"from_boat_stream","boat":1}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/boat-stream", 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
{
"mode": "from_boat_stream",
"boat": 1
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.boat_stream",
"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. |
Notas técnicas
Cómo se relacionan las velocidades de barco y corriente
La función pura solve acepta cualquiera de los dos modos y devuelve un único payload con boat, stream, upstream y downstream para que los clientes no adivinen qué campos están presentes. Tipos incorrectos, campos ausentes y combinaciones fuera de rango se convierten en errores invalid_input claros en lugar de resultados NaN silenciosos. La misma aritmética pura corre sin red en el navegador bajo el motor parse y en la ruta de API sin llamadas de red para el cálculo en sí.
Entradas, salidas y contratos estables
En from_boat_stream usted aporta boat y stream; en from_up_down aporta upstream y downstream. El modo opcional usa from_boat_stream por defecto si se omite. Los mensajes de error usan subcadenas estables en inglés, como boat speed must exceed stream speed o downstream must exceed upstream, que el arnés empareja en los ejemplos dorados de error. Los intermedios enormes que desbordan IEEE-754 se convierten en errores explícitos en lugar de campos nulos.
Casos límite, uso docente y límites
Cuando la entrada es inválida recibe invalid_input con un mensaje claro en inglés, útil tanto para personas como para pruebas.
Casos de integración
Demostraciones docentes
Muestre ejemplos resueltos con fixtures dorados que coinciden con el widget gratuito y la API.
Preguntas técnicas
¿Y si mi entrada es inválida?
Recibe invalid_input con un mensaje claro en inglés.
¿Quién es el autor de esta capacidad?
samurai en el taller KIT de ForHosting.