Conversion en c++
Fermé
Bonjour,
J'ai effectué un programme en c++ pour faire la conversion d'un nombre décimal en nombre binaire avec la fonction char. Jusque là tout fonctionne.
Mais il faut que j'effectue la somme des deux nombre binaire. Problème, je suis incapable de trouver la fonction qui permet d'additionné deux données de type char.
J'aimerais beaucoup de quelqu'un puisse m'aider.
Merci à l'avance.
Sylvie
J'ai effectué un programme en c++ pour faire la conversion d'un nombre décimal en nombre binaire avec la fonction char. Jusque là tout fonctionne.
Mais il faut que j'effectue la somme des deux nombre binaire. Problème, je suis incapable de trouver la fonction qui permet d'additionné deux données de type char.
J'aimerais beaucoup de quelqu'un puisse m'aider.
Merci à l'avance.
Sylvie
A voir également:
- Conversion en c++
- Monnaie conversion - Télécharger - Banque & Budget
- Conversion mb en go ✓ - Forum Mail
- Conversion bytes en mo - Forum Réseau
- Tableau conversion heure en centième - Forum LibreOffice / OpenOffice
- MégaByte (MB) & GigaOctet (Go) ✓ - Forum Matériel & Système
3 réponses
>Problème, je suis incapable de trouver
>la fonction qui permet d'additionné
additionner
>deux données de type char.
avec ca tu peux additionner deux donnees de type char:
guillaume@fallen:/tmp$ cat test.c
#include <stdio.h>
int main(void)
{
char a = 'a';
char b = 'b';
char c = a + b;
putchar(c);
return 0;
}
mais une addition n est pas une conversion. tu n es pas tres claire.
--
pouet
>la fonction qui permet d'additionné
additionner
>deux données de type char.
avec ca tu peux additionner deux donnees de type char:
guillaume@fallen:/tmp$ cat test.c
#include <stdio.h>
int main(void)
{
char a = 'a';
char b = 'b';
char c = a + b;
putchar(c);
return 0;
}
mais une addition n est pas une conversion. tu n es pas tres claire.
--
pouet
Wins
Messages postés
2
Date d'inscription
mardi 23 septembre 2003
Statut
Membre
Dernière intervention
22 octobre 2003
23 sept. 2003 à 22:13
23 sept. 2003 à 22:13
Bonjour,
J'ai effectué la conversion en binaire à l'aide de cette fonction :
Bien sur il me renvoie le nombre en binaire dans ma variable Binaire.
Le problème que j'ai c'est qu'il faut que j'addition BinaireA et BinaireB. Comment puis-je faire.
Merci à l'avance
Wins
J'ai effectué la conversion en binaire à l'aide de cette fonction :
void Calcule (int NbreDeci, char *Binaire) { int position = 7; do { Binaire[position] = (NbreDeci % 2) + 48; NbreDeci = NbreDeci / 2; position--; } while (NbreDeci != 0); }
Bien sur il me renvoie le nombre en binaire dans ma variable Binaire.
Le problème que j'ai c'est qu'il faut que j'addition BinaireA et BinaireB. Comment puis-je faire.
Merci à l'avance
Wins
ben ma foi, je ne vois pas le probleme: tu fais de la meme maniere que tu as fais pour ta conversion!
tu parcours toutes les "cases" de tes deux char * en commencant par la fin, ensuite tu fais l addition binaire, si la variable retenue est vraie, alors tu ajoutes 1 au resultat et tu sockes 1 ou 0 (le resultat concretement) dans la case corespondante de ton char*binaire_resultat.
bref le prototype serait char *add_binaire(char *binaire_a, char *binaire_b);
j'espere avoir ete clair. si tu as des problemes d implementation n hesite pas a poster ton code.
relativement au code de void Calcule (int NbreDeci, char *Binaire), je te conseille de declarer NbreDeci en tant que unsigned int, comme position, dans la mesure ou ils ne sont jamais negatifs, cela aide _beaucoup_ pour eviter les bugs. ensuite pour des questions de facilite de lecture ET de portabilite, evite les 65 ou les 48, utilise 'a', '0', etc...
--
pouet
tu parcours toutes les "cases" de tes deux char * en commencant par la fin, ensuite tu fais l addition binaire, si la variable retenue est vraie, alors tu ajoutes 1 au resultat et tu sockes 1 ou 0 (le resultat concretement) dans la case corespondante de ton char*binaire_resultat.
bref le prototype serait char *add_binaire(char *binaire_a, char *binaire_b);
j'espere avoir ete clair. si tu as des problemes d implementation n hesite pas a poster ton code.
relativement au code de void Calcule (int NbreDeci, char *Binaire), je te conseille de declarer NbreDeci en tant que unsigned int, comme position, dans la mesure ou ils ne sont jamais negatifs, cela aide _beaucoup_ pour eviter les bugs. ensuite pour des questions de facilite de lecture ET de portabilite, evite les 65 ou les 48, utilise 'a', '0', etc...
--
pouet