Les chiffres d'un int
Fermé
mikegamer1
Messages postés
40
Date d'inscription
mardi 31 juillet 2018
Statut
Membre
Dernière intervention
19 février 2019
-
25 août 2018 à 08:14
Dalfab Messages postés 703 Date d'inscription dimanche 7 février 2016 Statut Membre Dernière intervention 1 mars 2023 - 25 août 2018 à 11:46
Dalfab Messages postés 703 Date d'inscription dimanche 7 février 2016 Statut Membre Dernière intervention 1 mars 2023 - 25 août 2018 à 11:46
A voir également:
- Les chiffres d'un int
- Int(input()) - Forum Python
- Toutes les combinaisons possibles avec 3 chiffres ✓ - Forum Programmation
- Tous les code possible de 0 à 9 (4 chiffres ) - Forum Jeux vidéo
- Où trouver les 7 chiffres pôle emploi - Forum Internet / Réseaux sociaux
- Excel supprimer les espaces entre les chiffres ✓ - Forum Excel
2 réponses
KX
Messages postés
16668
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
17 mars 2023
3 005
25 août 2018 à 08:26
25 août 2018 à 08:26
Bonjour,
Au vu de tes exemples, tu ne peux pas t'aider des maths, car 16700 donne 7 en dernier chiffre c'est arbitraire.
Le plus simple ici serait de convertir ton nombre en chaîne de caractères (avec
Tu devras alors faire une boucle sur chaque caractère pour obtenir les chiffres que tu souhaites.
Au vu de tes exemples, tu ne peux pas t'aider des maths, car 16700 donne 7 en dernier chiffre c'est arbitraire.
Le plus simple ici serait de convertir ton nombre en chaîne de caractères (avec
sprintfpar exemple).
Tu devras alors faire une boucle sur chaque caractère pour obtenir les chiffres que tu souhaites.
Dalfab
Messages postés
703
Date d'inscription
dimanche 7 février 2016
Statut
Membre
Dernière intervention
1 mars 2023
100
25 août 2018 à 11:46
25 août 2018 à 11:46
Bonjour,
Le premier chiffre est :
Le dernier chiffre est :
Pour le cas 16,7000 je n'ai pas de solution car en C les nombres sont stockées en binaire et le nombre
Si on veut le dernier chiffre non nul qui donnerait 7 pour 167000, on peut faire
Le premier chiffre est :
int premier = n; while ( premier >= 10 ) premier /= 10;.
Le dernier chiffre est :
int dernier = n % 10;.
Pour le cas 16,7000 je n'ai pas de solution car en C les nombres sont stockées en binaire et le nombre
floatle plus proche de 16,7000 est 16.700000762939453125, le dernier chiffre serait donc 5.
Si on veut le dernier chiffre non nul qui donnerait 7 pour 167000, on peut faire
int inn = n;
int dernierNonNul = n % 10;
while ( dernierNonNul == 0 && n != 0 ) {
inn /= 10;
dernierNonNul = inn % 10;
}
25 août 2018 à 08:31
25 août 2018 à 08:39