Algo max chiffre ecrie de même chiffre donner par l'utilisateur
juba1999
-
quent217 Messages postés 420 Date d'inscription Statut Membre Dernière intervention -
quent217 Messages postés 420 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
je veux s'avoir comment faire un algorithme,l'utilisateur doit donnée un nombre entier ,la machine doit afficher le max de nombre ecrie par les mêmes chiffres sans utilisé le type tableau ,par exemple si on le donne 41358 il vas afficher ca => 85431 .
je veux s'avoir comment faire un algorithme,l'utilisateur doit donnée un nombre entier ,la machine doit afficher le max de nombre ecrie par les mêmes chiffres sans utilisé le type tableau ,par exemple si on le donne 41358 il vas afficher ca => 85431 .
Configuration: Android / Chrome 76.0.3809.132
A voir également:
- Algo max chiffre ecrie de même chiffre donner par l'utilisateur
- Excel trier par ordre croissant chiffre - Guide
- Clavier iphone chiffre et lettre - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Chiffre en lettre - Télécharger - Outils professionnels
- Télécharger macro convertir chiffre en lettre excel - Télécharger - Tableur
1 réponse
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