int main(int argc, char **argv) { int tailleC = 200; char chaine[tailleC]; // création d'un tableau de caractère for (int i = 0; i <tailleC; i++) { chaine[i] = '\0'; // initialise toutes les valeur à '\0' } cout << "Votre nombre en chaine : "; cin>>chaine; // demande un nombre à entrer dans le tableau de caractère int tempInt 0, nbChar 1, varInt = 0; for (int i = 0; i < tailleC; i++) { if (chaine[i] != '\0') { tempInt = (int) (chaine[i] - '0'); nbChar++; // compte le nombre de caractères entrés } } int exp = 1; for (int i = 0; i < (nbChar - 2) ; i++) { exp*=10; // permet de creer un exposant de 10 } for (int i = 0; i < tailleC; i++) { if (chaine[i] != '\0') { tempInt = (int) (chaine[i] - '0'); // reprend les valeurs du tableau varInt +tempInt*exp; // multiplie chaque unité par un exposant de 10 (ex : 521 5*10² + 2*10 + 1) exp/=10; // diminue de 1 la valeur de l'exposant } } cout << "En entier : " << varInt << endl << endl; // affiche la valeur de type integer system ("PAUSE"); return 0; }
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionint convertir(char *ch, int n) { int j, nb = 0; char temp[5] = {0}; if ( n > 0 ) { for (j = 3; j >= 0; j--) { temp[j] = n > 0 ? ch[n-1] : ' '; n--; } temp[4] = '\0'; nb = atoi(temp); } return(nb); }