Calculateur bateau et courant
Un bateau qui fait 10 en eau calme face à un courant de 2 remonte à 8 et descend à 12. Résolvez le problème dans les deux sens : depuis les vitesses du bateau et du courant, ou celles de montée et de descente. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Mode de calcul
- À partir des vitesses du bateau et du courant
- Vitesse du bateau en eau calme
- 10
- Vitesse du courant
- 2
- Vitesse à contre-courant
- 8
- Vitesse dans le sens du courant
- 12
Convertit entre la vitesse du bateau en eau calme, celle du courant et les vitesses montante et descendante. Gratuit, déterministe et privé dans votre navigateur. Sans compte.
Comment se relient les vitesses bateau et courant
Dans les problèmes quantitatifs classiques, un bateau se déplace en eau calme à la vitesse b tandis qu'un courant s'écoule à la vitesse s. Quand le bateau remonte le courant, la vitesse effective est b moins s ; quand il descend, les vitesses s'ajoutent et l'effectif est b plus s. Le problème inverse part des vitesses mesurées montante et descendante u et d et retrouve la vitesse du bateau comme leur moyenne et celle du courant comme la moitié de leur différence.
Chaque entrée doit être un nombre fini ; le bateau doit être strictement positif, le courant non négatif et, en mode direct, le bateau doit dépasser le courant pour que la montante reste positive. En mode inverse, montante et descendante doivent être positives et la descendante doit dépasser la montante.
Entrées, sorties et contrats stables
Les champs obligatoires dépendent du mode. Les couches de présentation peuvent convertir des chaînes numériques du formulaire avant d'appeler solve, mais le noyau ne transforme jamais des déchets en NaN en silence. Les messages d'erreur utilisent des sous-chaînes stables en anglais que le harnais associe aux exemples dorés d'erreur.
Objets vides, plages contradictoires et valeurs non finies sont rejetés tôt. Examinez les trois exemples dorés avant d'intégrer : succès direct avec bateau dix et courant deux, récupération inverse des mêmes nombres, et cas rejeté où le courant dépasse le bateau.
Cas limites, usage pédagogique et bornes
Exige un bateau plus rapide que le courant pour que la montante reste positive en sens direct. Un courant nul est autorisé et égalise montante et descendante au bateau. Les vitesses négatives sont rejetées.
Un enseignant peut parcourir avec la classe le cas d'eau calme dix avec courant deux jusqu'à montante huit et descendante douze, puis inverser la paire pour retrouver les originaux. Les scripts d'automatisation appellent la même fonction pure sans installer de tableur. Résultats stables entre navigateur et bord car l'arrondi est documenté et partagé.
Auteur samurai dans l'atelier KIT.
Cas d’usage
Devoirs et examens
Vérifiez des problèmes classiques de bateau et courant avec des réponses stables et reproductibles.
Automatisation
Appelez la même fonction pure depuis des scripts sans installer de tableur ni de CAS.
Questions fréquentes
Est-ce gratuit ?
Oui. Le niveau A s'exécute entièrement dans votre navigateur sans compte.
Appelle-t-il le réseau ?
Non. Le moteur parse garde le calcul sur l'appareil.
Les résultats sont-ils stables ?
Oui. Mathématiques déterministes et exemples dorés gèlent le contrat.
Comment trouver la vitesse du bateau en eau calme à partir des vitesses de montée et de descente ?
Faites leur moyenne. Avec 8 à la montée et 12 à la descente, le bateau fait 10 en eau calme, et le courant vaut la moitié de l'écart entre les deux, soit 2.
Pourquoi le bateau doit-il aller plus vite que le courant ?
Parce qu'à la montée, le courant se retranche de la vitesse du bateau. Si le courant était aussi rapide ou plus rapide, la vitesse de montée serait nulle ou négative et le bateau n'avancerait pas, ce que le problème classique exclut.
Outils associés
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre 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)Exemple de requête
{
"mode": "from_boat_stream",
"boat": 1
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.boat_stream",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
Notes techniques
Comment se relient les vitesses bateau et courant
La fonction pure solve accepte l'un ou l'autre mode et renvoie un unique payload avec boat, stream, upstream et downstream afin que les clients n'aient pas à deviner les champs présents. Types incorrects, champs manquants et combinaisons hors plage deviennent des erreurs invalid_input claires au lieu de NaN silencieux. La même arithmétique pure s'exécute hors réseau dans le navigateur sous le moteur parse et sur la route d'API.
Entrées, sorties et contrats stables
En from_boat_stream vous fournissez boat et stream ; en from_up_down vous fournissez upstream et downstream. Le mode optionnel vaut from_boat_stream par défaut. Le payload de succès répète toujours le mode et les quatre champs de vitesse.
Cas d'intégration
Démonstrations pédagogiques
Montrez des exemples résolus avec des fixtures dorés alignés sur le widget et l'API.
Questions techniques
Et si mon entrée est invalide ?
Vous recevez invalid_input avec un message clair en anglais.
Qui est l'auteur de cette capacité ?
samurai dans l'atelier KIT de ForHosting.