Aller au contenu principal
U/
Arithmétique
polyglotte

Convertir un entier entre deux bases quelconques (2 à 36)

Implémenter la conversion d'un entier positif d'une base source vers une base cible, en utilisant les chiffres 0-9 puis les lettres a-z pour les valeurs 10 à 35.

60 minPublié le 20 mai 2026Proposé par Anonyme

Défi

// Lisez attentivement, codez sur votre machine

Énoncé

Le programme lit trois lignes : la base source (entier entre 2 et 36), la base cible (entier entre 2 et 36), et la représentation de l'entier dans la base source (chiffres 0-9 puis lettres minuscules a-z pour les valeurs 10 à 35). Il affiche la représentation de cet entier dans la base cible, en minuscules. L'entier est strictement positif.

Contraintes

  • Les bases source et cible sont des entiers entre 2 et 36 inclus.
  • La valeur de l'entier converti tient dans un entier 64 bits non signé (≤ 2⁶⁴−1).
  • La représentation d'entrée est garantie valide pour la base source.
  • La sortie est en minuscules pour les chiffres ≥ 10.
  • Solution réalisable dans tout langage généraliste avec sa seule bibliothèque standard.

Exemple

Entrée :
10
16
255

Sortie :
ff
Entrée :
16
2
ff

Sortie :
11111111
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.