begin process at 2012 05 28 22:54:52
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Algorithme

 > 

Maths

 > 

Conversion décimale binaire


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Conversion décimale binaire

samedi 7 mai 2011 à 17:32:40 | Conversion décimale binaire

Coincoinisback

Bonjour,
je dois écrire un programme qui affiche la conversion binaire d'un nombre entier (compris entre 0 et 4 294 067 295, codé sur 32 bits) mais l'algorithme que j'ai écris de fonctionne pas.
Malgrès toutes mes tentatives et recherches je n'ai toujours pas réussi.
Si quelqu'un pouvait m'aider à trouver les erreurs ce serait gentil!



#include <stdio.h>
#include <stdlib.h>

int convertisseur ()
{
int decimal;
int binaire = 2;
printf("Entrez le nombre entier : ");
scanf ("%d", &decimal);
while (binaire <= decimal)
binaire *= 2;
binaire /= 2;
while (binaire !=0)
{
if (binaire <= decimal)
{
printf("1");
decimal -= binaire;
}
else
printf("0");
binaire /= 2;
}
printf ("\n");
printf ("Le nombre binaire est %d");
return binaire;
}



MERCI!
samedi 7 mai 2011 à 19:16:24 | Re : Conversion décimale binaire

pop70

Bonjour, le problème vient du fait que tu souhaites calculer de 0 à 4 294 067 295, or sur 32bits, un entier va de -2 147 483 648 à 2 147 483 647, ce qu'il faut c'est donc un unsigned int qui va de 0 à 4 294 967 295. De plus en testant le code avec ce type, on s'aperçoit que de mettre long long diminue le temps de calcul de façon considérable.
Aussi, il ne faut pas oublier en mettant unsigned de faire : %u et non %d dans le scanf.

Au final :

Code C/C++ :
#include <stdio.h>
#include <stdlib.h>

int convertisseur ()
{
    long long unsigned int decimal;
    long long unsigned int binaire = 2;
    printf("Entrez le nombre entier : ");
    scanf ("%u", &decimal);
    while (binaire <= decimal)
        binaire *= 2;
    binaire /= 2;
    while (binaire !=0)
    {
        if (binaire <= decimal)
        {
            printf("1");
            decimal -= binaire;
        }
        else
            printf("0");
        binaire /= 2;
    }
    printf ("\n");
    printf ("Le nombre binaire est %d");
    return binaire;
}



Cordialement,

Pop70
dimanche 8 mai 2011 à 20:51:05 | Re : Conversion décimale binaire

Coincoinisback

Merci Pop70!


Cette discussion est classée dans : nombre, binaire, conversion, printf, decimal


Répondre à ce message

Sujets en rapport avec ce message

conversion decimal - binaire [ par diabablo ] slt les amisj'aime la programmation mais pour debuter j'ai un peu de soucis tel que la conversion d'un nombre decimal en binaire. en faite ce n'est pa conversion binaire vers float rs-232 [ par zilot2 ] bonjours et pardonnez mon français: j'ai un projet pic16f qui consiste a envoyer un nombre float au port rs-232 puis je l'affiche sur pc.mon probleme Conversion binaire d'un nombre saisi au clavier [ par Debord10 ] Bjr! J'ai un petit souci,je voudrai convertir un nombre en binaire,mais ça marche pas;je sais quoi faire! Voilà ce que j'aifais : #include #include us Problème de code en C [ par Guillaume170194 ] Bonjour à tous Je ne vois pas le problème que peut avoir le code. Je choisi le niveau mais après cela ne correspond pas. Merci de votre aide Voici l conversion decimal à 3 octet distinct [ par abdobergach ] bonjour à tous j'ai une image bmp codé sur 3octet l'opération que je veux faire en début c'est que lors de la saisi d'un nombre décimal codé sur 3 oct Monnaie que doit rendre un caissier [ par genidou ] voila ce que je dois faire: Écrire un programme capable de calculer le nombre de billets minimal par un caissier lors d'un retrait d'argent d'un clie conversion nombre réel [ par bessouma06 ] bonjour à tousje cherche comment convertirun nombre réel  en un chaine de caractére.j'ai trouvé ce code sur ce site mais qui tien compte seulement  de programmation C : qui veut bien me donner un coup de pouce [ par dido1441 ] salut à tous ...j'aimerais bien qu'on maide à corriger set exercice. Voici mon code source [b] #include #include int main() { int i, nbre ; Calculatrice [ par sarazin66 ] Voila ma calculatrice , je cherche pleins de critique pour l'améliorer =D [^^langue3] voici ma source: [code=cpp][/code]#include #include #include


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,187 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales