Bonjour, le but de l'exercice est de faire ceci :
Créer un programme qui permet de saisir un nombre entier naturel et qui affiche le ou les poid(s) de chaque chiffre dans ce nombre. À partir de ces informations, le nombre doit pouvoir être reconstitué. Le poids représente la position du chiffre dans le nombre, en partant de la droite (le premier chiffre de droite est à la position 0, il a donc un poids 0).
voilà et moi j'ai codé quelque chose comme cela :
#include <iostream>
using namespace std;
int main()
{
int tableau[9] ; // contient le max de chiffre que peut comporter le nombre
int i ;
int nbre0 ;
int nbre1 ;
int nbre2 ;
int nbre3 ;
int nbre4 ;
int nbre5 ;
int nbre6 ;
int nbre7 ;
int nbre8 ;
unsigned long int nbdiv17 ;
unsigned long int nbdiv16 ;
unsigned long int nbdiv15 ;
unsigned long int nbdiv14 ;
unsigned long int nbdiv13 ;
unsigned long int nbdiv12 ;
unsigned long int nbdiv11 ;
unsigned long int nbdiv10 ;
unsigned long int nb ;
cout << " Entrez un nombre : " ;
cin >> nb ;
nbre0 = nb % 10 ; // reste de la division de nbre0 par nb modulo 10
tableau[0] = nbre0 ;
nbdiv10 = nb / 10 ;
nbre1 = nbdiv10 % 10 ;
tableau[1]= nbre1 ;
nbdiv11 = nbdiv10 / 10 ;
nbre2 = nbdiv11 % 10 ;
tableau[2]= nbre2 ;
nbdiv12 = nbdiv11 / 10 ;
nbre3 = nbdiv12 % 10 ;
tableau[3]= nbre3 ;
nbdiv13 = nbdiv12 / 10 ;
nbre4 = nbdiv13 % 10 ;
tableau[4]= nbre4 ;
nbdiv14 = nbdiv13 / 10 ;
nbre5 = nbdiv14 % 10 ;
tableau[5]= nbre5 ;
nbdiv15 = nbdiv14 / 10 ;
nbre6 = nbdiv15 % 10 ;
tableau[6]= nbre6 ;
nbdiv16 = nbdiv15 / 10 ;
nbre7 = nbdiv16 % 10 ;
tableau[7]= nbre7 ;
nbdiv17 = nbdiv16 / 10 ;
nbre8 = nbdiv17 % 10 ;
tableau[8]= nbre8 ;
for (i = 0; i < 9; i++)
{
if (tableau[i] > 0)
{
cout << tableau[i] << " : " << i << " \n " ; // affichage du tableau qui contient le nombre.
}
}
cout << " Entrez un nombre : " ;
cin >> nb ;
return 0 ;
}
Je voudrais savoir si cela est bon et si oui, je voudrais savoir pourquoi il ne m'affiche pas le poids des 0 dans le nombre ??