Algo max chiffre ecrie de même chiffre donner par l'utilisateur
Fermé
juba1999
-
27 févr. 2020 à 17:36
quent217 Messages postés 421 Date d'inscription vendredi 25 septembre 2015 Statut Membre Dernière intervention 1 mars 2024 - 27 févr. 2020 à 17:59
quent217 Messages postés 421 Date d'inscription vendredi 25 septembre 2015 Statut Membre Dernière intervention 1 mars 2024 - 27 févr. 2020 à 17:59
A voir également:
- Algo max chiffre ecrie de même chiffre donner par l'utilisateur
- Excel trier par ordre croissant chiffre - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Application pour écrire les chiffre en lettre - Télécharger - Outils professionnels
- I14 pro max - Accueil - Guide téléphones
- 1 million dinar algérien en chiffre ✓ - Forum Programmation
1 réponse
quent217
Messages postés
421
Date d'inscription
vendredi 25 septembre 2015
Statut
Membre
Dernière intervention
1 mars 2024
347
27 févr. 2020 à 17:59
27 févr. 2020 à 17:59
Bonjour,
Votre problème revient à trier les chiffres dans l'odre décroissant. Si l'utilisation d'un tableau est interdite, ça complique pas mal les choses.
J'imagine que transformer le nombre en chaine de caractères n'est pas une solution puisque une chaine de caractère est un tableau de caractères.
Une solution que je vois c'est de manipuler les chiffres du nombre séparément grâce à des opérations mathématiques (notament division entière et modulo) pour recréer un algorithme de tri.
Par exemple pour obtenir le 3ième chiffre du nombre 41358 en partant de la droite, on peut faire 41358/100 qui donne 413 puis 413%10 qui donne 3. Le / représente ici la division entière et % le modulo.
De manière général pour obtenir le ième chiffre d'un nombre n en partant de la droite avec i allant de 0 au nombre de chiffres - 1, on fait n/(10^i)%10.
En utilisant ce principe vous pouvez découper le nombre en plusieurs partie pour faire un algorithme de tri puis reconstruire le nombre.
Je n'ai pas trouvé plus simple sans l'utilisation d'un tableau, peut-être que quelqu'un proposera une autre solution.
Bonne soirée
Votre problème revient à trier les chiffres dans l'odre décroissant. Si l'utilisation d'un tableau est interdite, ça complique pas mal les choses.
J'imagine que transformer le nombre en chaine de caractères n'est pas une solution puisque une chaine de caractère est un tableau de caractères.
Une solution que je vois c'est de manipuler les chiffres du nombre séparément grâce à des opérations mathématiques (notament division entière et modulo) pour recréer un algorithme de tri.
Par exemple pour obtenir le 3ième chiffre du nombre 41358 en partant de la droite, on peut faire 41358/100 qui donne 413 puis 413%10 qui donne 3. Le / représente ici la division entière et % le modulo.
De manière général pour obtenir le ième chiffre d'un nombre n en partant de la droite avec i allant de 0 au nombre de chiffres - 1, on fait n/(10^i)%10.
En utilisant ce principe vous pouvez découper le nombre en plusieurs partie pour faire un algorithme de tri puis reconstruire le nombre.
Je n'ai pas trouvé plus simple sans l'utilisation d'un tableau, peut-être que quelqu'un proposera une autre solution.
Bonne soirée