Laurentvidal.fr est l'endroit idéal pour trouver des réponses rapides et précises à toutes vos questions. Obtenez des solutions rapides et fiables à vos questions grâce à des professionnels expérimentés sur notre plateforme de questions-réponses complète. Expérimentez la commodité d'obtenir des réponses précises à vos questions grâce à une communauté dévouée de professionnels.
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 apprécions votre temps. Revenez quand vous voulez pour obtenir les informations les plus récentes et des réponses à vos questions. Merci d'avoir visité Laurentvidal.fr. Revenez bientôt pour plus d'informations utiles et des réponses de nos experts.