Aller au contenu principal
U/
Conditions
polyglotte

FizzBuzz avec règles paramétrables

Généraliser FizzBuzz en acceptant un nombre arbitraire de règles (diviseur → mot) et une borne supérieure.

30 minPublié le 20 mai 2026Proposé par Anonyme

Défi

// Lisez attentivement, codez sur votre machine

Énoncé

Le programme lit sur l'entrée standard un entier N (borne supérieure inclusive), puis un entier R (nombre de règles), puis R lignes de la forme diviseur mot. Pour chaque entier de 1 à N, il affiche les mots des règles dont le diviseur divise l'entier (dans l'ordre de déclaration, concaténés). Si aucune règle ne s'applique, il affiche l'entier lui-même. Une valeur par ligne.

Contraintes

  • 1 ≤ N ≤ 10 000.
  • 1 ≤ R ≤ 10.
  • Chaque diviseur est un entier strictement positif.
  • Plusieurs règles peuvent s'appliquer à un même entier ; les mots sont concaténés dans l'ordre de déclaration, sans séparateur.
  • Solution réalisable dans tout langage généraliste avec sa seule bibliothèque standard.

Exemple

Entrée :
15
2
3 Fizz
5 Buzz

Sortie :
1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzBuzz
Espace solution

Proposer une solution

Connectez-vous ou créez un compte pour envoyer votre code (aucune exécution côté serveur — on stocke juste le texte pour la communauté).

// À garder en tête
  • D'abord, faire marcher

    On ne cherche pas à optimiser : d'abord, on fait marcher le truc. Optimiser vient ensuite — et ça aussi, ça s'apprend. (Si un défi porte sur l'optimisation, son énoncé le précise.)

  • Pas de mauvaise réponse

    Il n'y a pas de mauvaise réponse à un défi. Le but, c'est de le faire. Ce qui compte, c'est de s'entraîner.

  • Trop dur ? Au suivant

    Un défi te résiste ? N'hésite pas à en prendre un autre. Ils seront encore là demain.