ForHosting KIT · Outils pour développeurs

Vérificateur de nombres sociables et cycles aliquotes

Le vérificateur de nombres sociables part d’un entier positif et le remplace successivement par la somme de ses diviseurs propres.

● BetaGratuit · dans votre navigateur
Utilisez-le depuis WebAPIE-mailTelegramApp bientôt

Il conserve chaque terme jusqu’à ce que la suite atteigne zéro ou répète une valeur, puis distingue un retour au nombre de départ d’une trajectoire qui rejoint un autre cycle. Le résultat fournit la suite observée, le cycle répété, sa longueur et le nombre d’itérations, afin que vous puissiez contrôler ou réutiliser le calcul.

Définition d’un cycle sociable dans ce vérificateur

Une somme aliquote additionne tous les diviseurs positifs d’un entier, sauf l’entier lui-même. En partant de 12496, par exemple, l’opération donne un nouvel entier ; répétée sur chaque résultat, elle revient finalement à 12496 après plusieurs termes distincts. Le vérificateur qualifie ce parcours de cycle sociable, car la valeur répétée est celle du départ. La réponse fixe forms_sociable_cycle à vrai, indique l’état correspondant et présente les membres dans l’ordre sans répéter la valeur de fermeture dans le tableau du cycle. La suite complète contient toutefois cette dernière occurrence, ce qui vous permet de constater directement la fermeture. Selon cette convention, un nombre parfait constitue un cycle de longueur un et une paire de nombres amiables un cycle de longueur deux. Les cycles plus longs obéissent à la même règle. Les cas particuliers liés restent ainsi visibles, tandis que les applications peuvent filtrer les cycles de longueur trois ou davantage. Le nombre d’étapes correspond aux transformations aliquotes effectuées, et non au nombre de valeurs distinctes mémorisées.

Signalement de l’arrêt et de l’entrée dans un autre cycle

Toute valeur initiale n’appartient pas nécessairement à un cycle sociable. Si l’itération atteint 1, la somme aliquote suivante vaut 0, puisque 1 ne possède aucun diviseur propre positif. Le vérificateur renvoie alors un état terminé, un résultat faux et zéro comme valeur terminale. Une autre trajectoire peut rejoindre un cycle dont le premier membre diffère du nombre demandé. La réponse précise alors que le parcours est entré dans un autre cycle, donne l’indice où celui-ci commence et place uniquement la partie périodique dans le champ du cycle. Cette distinction est essentielle pour étudier la dynamique aliquote : rencontrer une valeur déjà vue prouve la périodicité future du parcours observé, mais pas l’appartenance de l’entier initial à cette période. Le tableau de la suite garde le chemin entier, de la valeur fournie jusqu’à la répétition finale, pour vous permettre de le représenter, de l’auditer ou de le comparer à une autre implémentation. Les champs sans objet pour une trajectoire terminée sont omis plutôt que remplis avec des valeurs nulles.

Bornes sûres, calcul déterministe et utilisation de l’API

Les suites aliquotes peuvent croître rapidement, et factoriser des termes toujours plus grands demanderait davantage de travail qu’un calcul léger dans un navigateur ou en périphérie ne devrait en accepter. Cette capacité impose donc une borne sûre de 1,000,000,000 pour chaque terme et un maximum de 1,000 transformations. La valeur initiale doit elle-même respecter la borne. Si une somme calculée la dépasse, la requête échoue avec une erreur de saisie qui cite le terme source et la limite ; aucun résultat partiel susceptible de passer pour une conclusion mathématique n’est renvoyé. Une suite qui ne s’arrête ni ne se répète avant la limite d’étapes déclenche également une erreur explicite. Dans ces bornes, l’algorithme est déterministe : il énumère les paires de diviseurs jusqu’à la racine carrée, ne compte une racine exacte qu’une fois et n’utilise ni réseau, ni horloge, ni hasard, ni état conservé. Envoyez le champ obligatoire start sous forme d’entier positif. Une entrée identique produit toujours le même JSON dans le navigateur ou par l’API, au tarif de $0.002 par requête.

Explorer un nombre sociable connu

Confirmez le cycle complet, sa longueur et la transition aliquote exacte qui le referme.

Classer une trajectoire aliquote

Distinguez l’arrêt à zéro, l’appartenance au cycle initial et l’entrée dans un autre cycle.

Valider un code de théorie des nombres

Comparez une suite déterministe et sa frontière cyclique à une autre implémentation des diviseurs propres.

Qu’est-ce qu’une somme aliquote ?

C’est la somme de tous les diviseurs positifs d’un nombre sauf lui-même. Pour 6, les diviseurs propres 1, 2 et 3 donnent 6.

Les nombres parfaits et les paires amiables comptent-ils ?

Oui. Un nombre parfait est traité comme un cycle de longueur un, et une paire amiable comme un cycle de longueur deux.

Pourquoi la suite répète-t-elle sa dernière valeur ?

La dernière occurrence montre exactement où le parcours se ferme. Le tableau séparé du cycle ne contient chaque membre qu’une fois.

Que se passe-t-il si un terme calculé est trop grand ?

La requête renvoie une erreur de saisie dès qu’un terme dépasse la borne sûre, sans présenter de classement incomplet.

Combien coûte une vérification par API ?

Chaque requête API coûte $0.002. La version pour navigateur applique le même calcul déterministe.

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.

POSThttps://api.kit.forhosting.com/numth/sociable-numbers

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é.

curl -X POST https://api.kit.forhosting.com/numth/sociable-numbers \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"start":12496}'
{
  "start": 12496
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "numth.sociable_numbers",
  "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.

par requête$0.002

Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.

max_term1000000000
max_steps1000
HTTPCodeSignification
401unauthorizedClé API absente ou invalide : vérifiez l’en-tête Authorization.
402insufficient_balanceSolde insuffisant : rechargez votre compte pour lancer cette tâche.
404unknown_typeType de tâche inconnu : vérifiez le champ type de votre requête.
429rate_limitedTrop de requêtes : ralentissez la cadence, puis réessayez.

Consulter la documentation complète du KIT →