Accueil > Forum > > > > [C ++] Conversion Decimal-Binaire aidez moi s.v.p
[C ++] Conversion Decimal-Binaire aidez moi s.v.p
mercredi 17 décembre 2008 à 15:19:59 |
[C ++] Conversion Decimal-Binaire aidez moi s.v.p

Belfegorvegeta
|
Bonjour, je voudrais pouvoir convertir un nombre entier entré par l'utilisateur en binaire, mais je dois afficher ce résultat chaine de caractère, le problème que je rencontre, c'est comment affecter une variable à une chaine de caractère ?
Code:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sring.h>
int main(int argc, char *argv[])
{
int entier, quotient, resultant;
char reste[3], binaire[20];
printf("Saisissez un entier");
scanf("%d", &entier);
do
{
resultant = quotient % 2;
quotient = quotient / 2;
strcpy(binaire, "");
strcpy(reste, resultant); /* Comment mettre une variable dans une chaîne de caractères ? */
strcat binaire, reste;
}
while(reste != 0);
ltoa(binaire, binaire, 10);
printf("Correspondance binaire = %s", binaire);
system("PAUSE");
return 0;
}
Merci!
|
|
mercredi 17 décembre 2008 à 15:44:55 |
Re : [C ++] Conversion Decimal-Binaire aidez moi s.v.p

fregolo52
|
salut on dirait un exercice qui date d'un an  . Cette question a été posée par quelqu'un de la promo de l'an dernier.  Mais si on garde ta méthode : c'est plutot ce genre de chose // on vide la chaine memset(binaire, 0, 20); do { resultant = quotient % 2; quotient = quotient / 2; sprintf(binaire, "%s%d", binaire, resultant); /* Comment mettre une variable dans une chaîne de caractères ? */ } while(quotient != 0); // sinon vu que travaille en binaire tu peux jouer avec les décalage l'opération >> 1 revient à décalé d'un bit vers la droite, donc diviser par 2 do { resultant = quotient & 1; quotient = quotient >> 1; sprintf(binaire, "%s%d", binaire, resultant); /* Comment mettre une variable dans une chaîne de caractères ? */ } while(quotient != 0); dans ces 2 exemples, tu as ta chaine a l'envers. essaie _strrev (si tu es sous windows)
|
|
mercredi 17 décembre 2008 à 16:45:25 |
Re : [C ++] Conversion Decimal-Binaire aidez moi s.v.p

Belfegorvegeta
|
J'ai modifier le code, seulement à l'exécution le programme se fige après avoir entrer la valeur, je ne trouve pas d'où cela vient.
nouveau code:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
int entier, quotient, resultant;
char reste[3], binaire[20];
printf("Saisissez un entier\n");
scanf("%d", &entier); /* L'utilisateur entre le nombre à convertir */
do
{
resultant = quotient % 2; /* Obtention du reste */
quotient = quotient / 2; /* Obtention du numérateur suivant */
strcpy(binaire, ""); /* Déclaration chaîne vide afin de ne pas avoir de problèmes pour la concaténation */
ltoa(resultant, reste, 10); /* Conversion du reste en chaine */
strcat(binaire, reste); /* Concaténation d'une partie de la chaîne bianaire avec le nouveau reste */
}
while (reste != 0);
strrev(binaire);
printf("Correspondance binaire = %s", binaire);
system("PAUSE");
return 0;
}
|
|
mercredi 17 décembre 2008 à 17:23:21 |
Re : [C ++] Conversion Decimal-Binaire aidez moi s.v.p

fregolo52
|
Réponse acceptée !
avant meme de lire ton code, le programme se fige => boucle infinie. Bon voyons ton erreur.
reste est une chaine de caracètre, que tu compares à un entier (dans le while), c'est ca ton pb.
Dans ton programme, tu sortirais quand reste == 0; Ca ne va pas, tu va sortir à la 1ere ou 2e itération. Il faut que tu sorte quand quotien sera égal à 0. Comme dans mon code d'exemple.
|
|
mercredi 17 décembre 2008 à 22:01:38 |
Re : [C ++] Conversion Decimal-Binaire aidez moi s.v.p

Belfegorvegeta
|
Merci fregolo52, j'ai réglé mon problème et le code est fonctionnel:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
int main()
{
int quotient, resultant;
char reste[5], binaire[20];
printf("Saisissez un entier\n");
scanf("%d", "ient); /* L'utilisateur entre le nombre à convertir */
strcpy(binaire, ""); /* Déclaration chaîne vide afin de ne pas avoir de problèmes pour la concaténation */
do
{
resultant = quotient % 2; /* Obtention du reste */
quotient = quotient / 2; /* Obtention du numérateur suivant */
ltoa(resultant, reste, 10); /* Conversion du reste en chaine */
strcat(binaire, reste); /* Concaténation d'une partie de la chaîne bianaire avec le nouveau reste */
}
while(quotient != 0);
strrev(binaire);
printf("Correspondance binaire = %s\n", binaire);
system("PAUSE");
return 0;
}
|
|
Cette discussion est classée dans : reste, binaire, include, entier, quotient
Répondre à ce message
Sujets en rapport avec ce message
Affichier un entier en binaire avec printf [ par Muner ]
Bonjour a tous,je voudrais savoir comment afficher avec printf un entier (int) en binaire .MERCI MUNER
Manipulation de grand tableaux d'entier [ par oistrakh ]
Bonjour,Pour acceler un programme VBA, j'ai introduit une dll dans laquelle notammentje cherche a remplir des tableaux tres grand ( j'aimerais atteind
Extraire entier d'une chaine [ par Vylco ]
Bonjour, voila j'ai un exo a faire en algo mais je vois pas comment le faire. la consigne: soit une chaine de caractère. Ecrivez une fonction qui rec
conversion de chaine en entier [ par bechwiyech ]
Bonsoir j'ai ecris un petit code pour convertir un nombre en un entier. mais ca marche pas , pourriez vous m'aidez. #include #include #include stati
concaténation plusieurs int [ par johan3240 ]
Bonjour tout le monde, j'ai un petit code en C à faire sujet : en gros c'est u programme qui utilise la division successive. à la fin de mes divisions
probléme rsa [ par thesum4113 ]
// Ce programme ne fonctionne qu'avec des entiers naturels// demande les données à l'utilisateur et convertit les chaînes de caractères en entiersvar
detection des petites cercles dans une image avec opencv [ par swito ]
salut je travaille sur un projet qui consiste à détecter les petites cercles manométriques dans les images , j'ai utilisé la fonction cvHoughCircles
probleme de debug [ par elhajjajireda ]
si le vous plait j'ai placé un breakpoint sur ma fonction principale linge22 ou s'est écrit l'instruction " Image2.Load(argv[2]); sur Windows et avec
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
detection sur video avec opencv [ par altyok ]
bonjour, je cherche quelqu'un qui pourrait m'aider à résoudre un problème sur opencv j'ai fait un programme qui lit les frams de ma webcam ensuite j'
Livres en rapport
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|