01net    Web


Actuellement en ligne : 116 Utilisateurs dont 4 dans Programmation et développement >S'inscrire      >S'identifier      >Recherche      >Aide  
modéré par A.Ouloube, Beno@  
01net > Forum de 01net > Programmation et développement > C/C++
> binaire
Passionné(e) d'internet, de logiciels, de forums ? 01net recrute...
Auteur
Message
 
<     1       >
jb2b
  
   
      ?   @     Posté le 14/11/2005 21:19:10  
Voter pour ce message
Salut,

j'ai un p'tit souci avec un code en C. Je dois convertir un nb en fonction d'une base.
J'ai un souci dnas l'affichage alors si vous pouvez regarder un peu.
LE premier algo est ceci:

int binaire(int nb, int base)
{
int puissance_de_2=1;
while (puissance_de_2<=nb)
{
puissance_de_2=puissance_de_2*base;
}
puissance_de_2=puissance_de_2/base;

while (puissance_de_2>0)
{
printf( "%1d", nb/puissance_de_2);

nb=nb-puissance_de_2*(nb/puissance_de_2);
puissance_de_2=puissance_de_2/base;
}
echo "\n";
}

int main(){

binaire(24,10);

binaire(24,2);
}

Merci, en fait je crois que ca ne marche pas 24 l'affiche en 21 pour la base de 1à et affiche 110 pour le binaire.
icare_olivier
  arriere, band de newbies ^^
  :-)
      ?   @     Posté le 15/11/2005 13:35:46  
Voter pour ce message
Je t'avouerais que j'ai un peu la flemme de chercher ton erreur,
mais c'est rapide de coder un truc qui devrait marcher (a mon avis) donc :

#include <iostream>
#include <string>
using namespace std;

string base(int nombre, int base )
{
string result = "";
int puissance=1;
int mod = base;

do
{
puissance *= base;
mod = (nombre % puissance)*base/puissance; //nombre considéré
result = string('0' + mod) + result;
}while( (nombre%puissance) != nombre );

return result;
}

int main()
{
cout<<base(24,2).c_str();
}


ya surement quelques erreurs qui aparaitront à la compilation... vu que j'ai écri ca sans avoir de compilo sous la main (je suis au cdi de mon bahut) ... mais à mon avis, sur le principe ca doit marcher :)

[edit]
ah oui au fait ... c'est du C++ ca ... je sais pas si tu codes habituellement en C, mais bon ... dsl si c'est le cas
-->Message édité par icare_olivier le 15/11/2005 13:41:30<--
<     1       >

01net > Forum de 01net > Programmation et développement > C/C++
> binaire

Aller à :

Page générée en : 0.078s - X2board 2.2

Nous contacter | Charte de confiance | Voir notice légale

Tous droits réservés © 1999 - 2008 Groupe Tests - 01net.


Sites du réseau 01net Network : 01net - 01men - Rmc.fr - Bfmtv.fr - Radiobfm.com - TousLesPodcasts - Micro Achat

Multi Convertisseur
Convertissez rapidement et simplement vos fichiers vidéo dans tous les formats avi, mpeg, wmv, mov, ...
Jeux
Nouveauté : Collectionnez des artefacts dans les musées, et jouez bien vos cartes.