DÉFIS
Chaque défi est inutile. Aucun n'est une perte de temps : on code pour le plaisir et on apprend pour de vrai.
60 défis
- MoyenPiles
Vérifier l'équilibre des parenthèses, crochets et accolades
Lire une expression et déterminer si chaque parenthèse ouvrante a une fermante correspondante du bon type, imbriquée correctement.
polyglotteIntermédiaire#piles#parsing30 minmai 2026 - MoyenChaînes
Vérifier si deux mots sont anagrammes
Déterminer si deux chaînes de caractères sont des anagrammes strictes l'une de l'autre, en tenant compte uniquement des lettres.
polyglotteIntermédiaire#chaines#anagramme25 minmai 2026 - MoyenChaînes
Valider une heure HH:MM au format 24h sans regex
Lire une chaîne et déterminer si elle représente une heure valide au format HH:MM en horaire 24h, sans utiliser d'expressions régulières.
polyglotteIntermédiaire#chaines#validation30 minmai 2026 - FacileArithmétique
Calculer la valeur absolue d'un entier
Lire un entier et afficher sa valeur absolue, sans utiliser de fonction abs() native.
polyglotteDébutant#arithmetique#conditions5 minmai 2026 - MoyenListes
Union et intersection de deux listes triées
À partir de deux listes d'entiers triées par ordre croissant, calculer et afficher leur union et leur intersection, également triées.
polyglotteIntermédiaire#listes#ensembles35 minmai 2026 - MoyenArithmétique
Tester la primalité d'un entier jusqu'à 10⁶
Lire un entier et déterminer s'il est premier, en utilisant un algorithme efficace adapté à la plage 1 à 10⁶.
polyglotteIntermédiaire#arithmetique#primes25 minmai 2026 - FacileConditions
Tester si un entier est pair ou impair
Lire un entier et afficher `pair` s'il est divisible par 2, `impair` sinon.
polyglotteDébutant#conditions#parite5 minmai 2026 - FacileChaînes
Tester si une chaîne ASCII est un palindrome
Lire une chaîne ASCII sur l'entrée standard et afficher `oui` si elle se lit de la même façon dans les deux sens, `non` sinon.
polyglotteDébutant#chaines#palindrome15 minmai 2026 - FacileConditions
Déterminer si une année est bissextile
Lire une année et afficher `bissextile` si elle l'est, `non bissextile` sinon, en appliquant les règles du calendrier grégorien.
polyglotteDébutant#conditions#calendrier15 minmai 2026 - FacileBoucles
Afficher la table de multiplication par 7
Afficher les 10 premières lignes de la table de multiplication par 7, sous la forme `7 x N = R`, de N = 1 à N = 10.
polyglotteDébutant#boucles#multiplication10 minmai 2026 - MoyenListes
Min, max et moyenne d'une liste d'entiers
Lire une liste d'entiers et afficher son minimum, son maximum et sa moyenne arithmétique arrondie à deux décimales.
polyglotteIntermédiaire#listes#statistiques25 minmai 2026 - FacileArithmétique
Somme des entiers de 1 à 50
Calculer et afficher la somme de tous les entiers de 1 à 50 inclus.
polyglotteDébutant#arithmetique#somme10 minmai 2026 - MoyenArithmétique
Somme des diviseurs propres d'un entier
Lire un entier N et afficher la somme de ses diviseurs propres, c'est-à-dire tous les diviseurs positifs de N strictement inférieurs à N.
polyglotteIntermédiaire#arithmetique#diviseurs25 minmai 2026 - FacileArithmétique
Somme des chiffres décimaux d'un entier
Lire un entier positif et afficher la somme de ses chiffres décimaux individuels.
polyglotteDébutant#arithmetique#chiffres15 minmai 2026 - FacileChaînes
Lire un prénom et afficher un salut
Lire un prénom sur l'entrée standard et afficher `Bonjour, <prénom> !` sur la sortie standard.
polyglotteDébutant#chaines#entree5 minmai 2026 - DifficileRecherche
Résoudre un Sudoku 4×4 par backtracking
Implémenter un solveur de Sudoku 4×4 par backtracking : remplir les cases vides de façon à ce que chaque ligne, colonne et bloc 2×2 contienne les chiffres 1 à 4.
polyglotteAvancé#recherche#backtracking75 minmai 2026 - FacileArithmétique
Extraire le premier chiffre d'un entier positif
Lire un entier positif et afficher son chiffre le plus significatif (le chiffre de gauche dans sa représentation décimale).
polyglotteDébutant#arithmetique#chiffres10 minmai 2026 - FacileArithmétique
Calculer X% d'une valeur Y
Lire un pourcentage X et une valeur Y sur l'entrée standard, puis afficher X% de Y arrondi à deux décimales.
polyglotteDébutant#arithmetique#pourcentage10 minmai 2026 - DifficileDyn. prog
Plus longue sous-séquence commune (LCS)
Implémenter l'algorithme de programmation dynamique pour trouver la longueur et une instance de la plus longue sous-séquence commune (LCS) entre deux chaînes de caractères.
polyglotteAvancé#dyn-prog#chaines60 minmai 2026 - MoyenChaînes
Trouver le plus court mot d'une phrase
Lire une phrase et afficher le mot le plus court qu'elle contient ; en cas d'égalité, afficher le premier dans l'ordre d'apparition.
polyglotteIntermédiaire#chaines#mots20 minmai 2026 - DifficileGraphes
Plus court chemin dans un labyrinthe ASCII (BFS)
Trouver le plus court chemin entre un point de départ S et une sortie E dans un labyrinthe représenté par une grille ASCII, en utilisant une recherche en largeur (BFS).
polyglotteAvancé#graphes#bfs75 minmai 2026 - DifficileParsing
Parser un CSV avec guillemets et virgules échappées
Implémenter un parser CSV respectant un sous-ensemble de la RFC 4180 : champs entre guillemets, virgules internes, guillemets doublés comme séquence d'échappement.
polyglotteAvancé#parsing#csv75 minmai 2026 - FacileBoucles
Imprimer les pairs entre 5 et 103
Afficher tous les entiers pairs compris entre 5 et 103 inclus, un par ligne.
polyglotteDébutant#boucles#sortie-standard10 minmai 2026 - MoyenRécursion
Calculer le N-ième terme de Fibonacci
Lire un entier N et afficher le N-ième terme de la suite de Fibonacci, en considérant F(0) = 0 et F(1) = 1.
polyglotteIntermédiaire#recursion#suites25 minmai 2026 - FacileArithmétique
Calculer la moyenne arithmétique de 3 notes
Lire trois notes entières sur des lignes séparées et afficher leur moyenne arithmétique arrondie à deux décimales.
polyglotteDébutant#arithmetique#moyenne10 minmai 2026 - FacileConditions
Trouver le maximum de trois entiers
Lire trois entiers donnés sur des lignes séparées et afficher le plus grand des trois.
polyglotteDébutant#conditions#comparaison10 minmai 2026 - FacileChaînes
Compter les caractères d'une chaîne
Lire une chaîne sur l'entrée standard et afficher le nombre de caractères qu'elle contient, sans compter le saut de ligne final.
polyglotteDébutant#chaines#comptage5 minmai 2026 - MoyenArithmétique
Lister les N premiers nombres premiers
Lire un entier N et afficher les N premiers nombres premiers dans l'ordre croissant, un par ligne.
polyglotteIntermédiaire#arithmetique#primes30 minmai 2026 - FacileChaînes
Inverser une chaîne caractère par caractère
Lire une chaîne sur l'entrée standard et afficher les caractères dans l'ordre inverse, sans utiliser de fonction d'inversion intégrée.
polyglotteDébutant#chaines#inversion15 minmai 2026 - MoyenChaînes
Inverser l'ordre des mots d'une phrase
Lire une phrase et afficher ses mots dans l'ordre inverse, séparés par un espace unique, sans modifier les mots eux-mêmes.
polyglotteIntermédiaire#chaines#mots20 minmai 2026 - FacileBoucles
Imprimer N astérisques sur une ligne
Lire un entier N et afficher exactement N astérisques consécutifs sur une seule ligne.
polyglotteDébutant#boucles#sortie-standard5 minmai 2026 - MoyenTri
Implémenter le tri à bulles sur une liste d'entiers
Trier une liste d'entiers en utilisant l'algorithme de tri à bulles, sans recourir aux fonctions de tri intégrées du langage.
polyglotteIntermédiaire#tri#algorithmes30 minmai 2026 - FacileConditions
FizzBuzz classique de 1 à 100
Afficher les entiers de 1 à 100 en remplaçant les multiples de 3 par Fizz, les multiples de 5 par Buzz, et les multiples des deux par FizzBuzz.
polyglotteDébutant#fizzbuzz#conditions15 minmai 2026 - MoyenConditions
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.
polyglotteIntermédiaire#fizzbuzz#parametres30 minmai 2026 - FacileChaînes
Extraire le premier mot d'une phrase
Lire une phrase sur l'entrée standard et afficher uniquement son premier mot, défini comme la séquence de caractères précédant le premier espace.
polyglotteDébutant#chaines#parsing10 minmai 2026 - FacileChaînes
Extraire le dernier mot d'une phrase
Lire une phrase sur l'entrée standard et afficher uniquement son dernier mot, défini comme la séquence de caractères suivant le dernier espace.
polyglotteDébutant#chaines#parsing10 minmai 2026
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.