Suite des vaches de Narayana
Obtenez n'importe quel terme de la suite des vaches de Narayana de l'indice 0 à 97 : N(10) vaut 28, car chaque terme additionne le précédent et celui situé trois rangs plus tôt, 19 plus 9. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- N
- 10
- Valeur
- 28
- Séquence
- Narayana's cows
- Récurrence
- N(0)=N(1)=N(2)=1; N(n)=N(n-1)+N(n-3) for n>=3
La suite des vaches de Narayana modélise un troupeau où chaque vache adulte donne naissance chaque année et où les veaux se reproduisent après un délai. Dans sa forme standard indexée à partir de zéro, les trois premiers termes valent un, puis chaque terme additionne le précédent et celui situé trois rangs auparavant. Ce calculateur renvoie un terme exact pour un indice non négatif, avec la convention et la récurrence employées. Vous pouvez ainsi vérifier un exercice, valider un programme ou éviter une confusion avec Fibonacci ou Padovan.
Comprenez la suite et sa convention d'indexation
Ce calculateur adopte N(0)=1, N(1)=1 et N(2)=1. Pour n>=3, la règle est N(n)=N(n-1)+N(n-3) : chaque valeur réunit le terme précédent et celui de trois rangs antérieur. Le début est 1, 1, 1, 2, 3, 4, 6, 9, 13, 19 et 28.
Ainsi, N(6)=N(5)+N(3)=4+2=6. Les valeurs initiales doivent être précisées, car certaines sources numérotent la même liste à partir de un. La réponse rappelle n et affiche la récurrence complète.
Un indice négatif produit une erreur de saisie plutôt qu'une extension rétrograde non standard.
Envoyez un indice et lisez le résultat
Le résultat contient n normalisé, value pour le nombre demandé, sequence pour son nom et recurrence pour les valeurs initiales et la règle. Une chaîne entière telle que "10" devient 10. Les fractions, champs vides, textes quelconques, nombres négatifs et valeurs hors limite sont refusés.
N(97) est le dernier terme représentable exactement comme entier sûr JavaScript. Le calcul conserve trois valeurs et effectue au plus 95 additions, sans table distante, service externe ni modèle.
Exploitez le résultat en cours et dans vos tests
Cette suite illustre comment les conditions initiales et les décalages déterminent une récurrence. Vous pouvez dresser un tableau avec n, N(n-1), N(n-3) et N(n), puis contrôler chaque ligne. Dans un test automatisé, vérifiez aussi l'indice et la règle afin de repérer un programme qui produit Padovan ou Fibonacci en additionnant les mauvais rangs.
Si une source place les trois uns aux positions un, deux et trois, décalez sa position avant comparaison. Cet outil ne traite ni les indices négatifs ni les très grands termes en précision arbitraire. Pour les entrées admises, aucun état caché, réseau, horloge ou hasard n'intervient ; la réponse convient donc aux jeux de référence et à une documentation reproductible.
Cas d’usage
Vérifier un exercice de récurrence
Comparez un terme calculé à la main à un résultat exact indiquant valeurs initiales, indice et règle.
Valider une implémentation
Utilisez des sorties connues pour tester boucles, programmation dynamique ou bibliothèques de suites.
Illustrer une croissance démographique différée
Montrez comment un délai de trois étapes engendre une croissance différente de Fibonacci.
Questions fréquentes
Qu'est-ce que la suite des vaches de Narayana ?
C'est ici la suite définie par N(0)=N(1)=N(2)=1 et N(n)=N(n-1)+N(n-3) pour n>=3.
L'indexation commence-t-elle à zéro ou à un ?
Elle commence à zéro : N(0), N(1) et N(2) valent 1. D'autres sources peuvent décaler ces mêmes valeurs.
Pourquoi l'indice maximal est-il 97 ?
N(97) est le dernier terme qui reste un entier sûr JavaScript exact.
Combien vaut N(10) dans la suite des vaches de Narayana ?
N(10) vaut 28. C'est la somme de N(9), qui vaut 19, et de N(7), qui vaut 9 : le terme juste avant plus celui situé trois rangs plus tôt.
Quels sont les premiers termes de la suite ?
En comptant à partir de l'indice 0, la suite commence par 1, 1, 1, 2, 3, 4, 6, 9, 13, 19 et 28. Les trois premiers termes valent 1 et tous les suivants obéissent à la même règle.
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/numth/narayana-cows \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"n":10}'const res = await fetch("https://api.kit.forhosting.com/numth/narayana-cows", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"n": 10
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/numth/narayana-cows",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"n": 10
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/numth/narayana-cows", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"n":10}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"n":10}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/numth/narayana-cows", 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
{
"n": 10
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "numth.narayana_cows",
"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
Comprenez la suite et sa convention d'indexation
Les additions sont entières et exactes : le navigateur et l'API fournissent donc un résultat reproductible.
Envoyez un indice et lisez le résultat
Fournissez n sous forme d'entier non négatif compris entre zéro et 97 ; l'alias index est également accepté. Une exécution API valide coûte $0.002 ; l'outil du navigateur exécute localement la même fonction pure.
Questions techniques
Que se passe-t-il si n est négatif ?
La requête renvoie invalid_input ; cette capacité ne définit aucune extension rétrograde.
Quel est le prix d'une requête API ?
Une requête réussie coûte $0.002 ; le calculateur du navigateur emploie localement la même logique.