Essays.club - Dissertations, travaux de recherche, examens, fiches de lecture, BAC, notes de recherche et mémoires
Recherche

Convertisseur ISN

Par   •  2 Décembre 2017  •  968 Mots (4 Pages)  •  586 Vues

Page 1 sur 4

...

binaireVERSdecimal(int nb) // fonction de conversion du binaire vers le decimal

{

int decimal=0, reste, i=0;// declaration des variables necessaire au calcul

while (nb!=0) // condition d’arret

{

reste = nb%10;

nb/=10;

decimal += reste*pow(2,i); // pow est la fonction qui permet d’elever un nombre a une puissance donnee*/

++i; // incrementation de la variable

}

return decimal;

}

void decimalVERShexadecimal(int nb) // fontion de conversion decimal vers l’hexadecimal

{

printf("\nLe nombre decimal %d est egal a ---> ",nb);

int reste[50],i=0,longueur=0;

while(nb>0) // algortihme pour la ocnversion

{

reste[i]=nb%16;

nb=nb/16;

i++;

longueur++;

}

for(i=longueur-1;i>=0;i--)

{

switch(reste[i]) // instructions exécutées pour les cases 10,11,12,13,14,15

{

case 10: // pour 10 afficher A

printf("A");

break; // fin de la condition

case 11:

printf("B");

break;

case 12:

printf("C");

break;

case 13:

printf("D");

break;

case 14:

printf("E");

break;

case 15:

printf("F");

break;

default : // afficher reste[i] pour tout autre valeur des cases

printf("%d",reste[i]);

}

}

printf(" <--- en hexadecimal. \n\n");

}

void hexadecimalVERSdecimal() // fonction de conversion de l’hexadecimal vers le decimal

{

printf("\nVous avez choisi la conversion hexadecimal vers decimal. \n\n Entrez le nombre hexadecimal a convertir s’il vous plait : ");

char Hexa[24];

int i=0,nb=0,imax;

scanf("%s", Hexa);

imax = strlen(Hexa); // strlen permet de retourner la valeur hexa de la châine de caractère

for(i=0;i<imax;i++)

{

if((Hexa[i]>=65)||(Hexa[i]<=70)) //valeur du tableau ASCII

nb=nb+(Hexa[i]-55)*pow(16,i);

else if((Hexa[i]>=97)&&(Hexa[i]<=102))

nb=nb+(Hexa[i]-87)*pow(16,i);

else if((Hexa[i]>=48)&&(Hexa[i]<=57))

nb=nb+(Hexa[i]-48)*pow(16,i);

else

{

printf("\n Erreur vous n’avez pas rentre un nombre hexadecimal.\n");

}

}

if(i==imax)

printf("\n Votre nombre hexadecimal est egal a ---> %d <--- en decimal.\n",nb);

...

Télécharger :   txt (5 Kb)   pdf (63.2 Kb)   docx (11.5 Kb)  
Voir 3 pages de plus »
Uniquement disponible sur Essays.club