Laurentvidal.fr vous aide à trouver des réponses à toutes vos questions grâce à une communauté d'experts passionnés. Découvrez des réponses fiables à vos questions grâce à une communauté d'experts prêts à partager leurs connaissances et expériences variées. Obtenez des réponses immédiates et fiables à vos questions grâce à une communauté d'experts expérimentés sur notre plateforme.
Sagot :
#include <stdio.h>
int main()
{
// déclaration de la chaine de caractère qui contiendra le nombre binaire saisi
char bits[1000];
//déclaration de la variable qui servira à parcourir la chaine de caractère
int i = 0;
//déclaration de la variable qui contiendra le résultat
long int d = 0;
// déclaration de la variable qui enregistrera les puissances de 2
long int power = 1;
// demande de saisi pour l'utilisateur
printf("veuillez saisir le nombre binaire a convertir en decimal ");
//saisie de l'utilisateur
scanf("%s", bits);
//recherche de la longueur de la chaine en la parcourant jusqu'à trouver le caractère de fin
while (bits[i] != '\0'){
i++;
}
//parcours de la chaine de droite à gauche en commençant par le dernier caractére (celui juste avant '\0')
for (i--;i>=0 ; i--){
//si le caractère lu est un 1
if(bits[i] == '1'){
//on ajoute la puissance de 2 correspondante (au début 2^0 = 1)
d+=power;
}
//calcul de la puissance de 2 suivante
power*=2;
}
//affichage du résultat
printf("%s en décimal vaut : %li",bits,d);
return 0;
}
Merci d'utiliser notre service. Notre objectif est de fournir les réponses les plus précises pour toutes vos questions. Revenez pour plus d'informations. Nous espérons que vous avez trouvé ce que vous cherchiez. Revenez nous voir pour obtenir plus de réponses et des informations à jour. Laurentvidal.fr, votre site de confiance pour des réponses. N'oubliez pas de revenir pour plus d'informations.