Exercice 26
Ecrire une fonction Python inverser_nombre(n) qui prend en entrée un entier positif n et retourne le nombre obtenu en inversant l'ordre des chiffres. Pour n = 251, la fonction retourne 152. Envisager deux méthodes l'une en utilisant la fonction str() et l'autre sans utiliser cette fonction.
Solution
Méthode 1 : en utilisant la fonction str()
On convertit le nombre en chaîne de caractères, puis on inverse l’ordre de ses caractères, et enfin on le reconvertit en entier.
|
1 2 3 4 5 6 7 8 9 10 11 12 |
def inverser_nombre(n): # Conversion en chaîne s = str(n) # Inversion de la chaîne s_inverse = s[::-1] # Retour au format entier return int(s_inverse) # Exemple print(inverser_nombre(123)) # 321 |
Méthode 2 : sans utiliser la fonction str()
On utilise uniquement des opérations mathématiques.
Le principe :
- extraire le dernier chiffre avec % 10
- le rajouter au nombre inversé
- supprimer ce chiffre du nombre original avec // 10
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
def inverser_nombre(n): # Initialisation du nombre cherché resultat = 0 while n > 0: # Obtenir le dernier chiffre chiffre = n % 10 # On construit le nombre inversé resultat = resultat * 10 + chiffre # On enlève le dernier chiffre n = n // 10 return resultat # Exemple print(inverser_nombre(123)) # 321 |
Younes Derfoufi
CRMEF OUJDA
Acheter sur Très Facile !
-

Hub USB 3.0 OBERSTER Multiport
€ 7,00 Acheter le produit -
Promo !

Routeur WiFi AX 3000 Mbps TP-Link Routeur, WiFi 6, 4 antennes à haute performance, OneMesh, WPA3
Le prix initial était : € 99,00.€ 56,00Le prix actuel est : € 56,00. Acheter le produit -

POO: Cours et exercices en UML2, Python, PHP, C#, C++ et Java (French Edition)
€ 17,00 Achetez le livre
