Trouve l'équivalent binaire

Soyez le premier à donner votre avis sur cette source.

Snippet vu 6 946 fois - Téléchargée 35 fois

Contenu du snippet

cet algorithme transforme un nombre décimal (base 10) en une base quelconque par divisions successives. Soit NOMBRE, l'entier à convertir, et BASE, la nouvelle base . Si par exemple, on a le nombre 47, on le divise successivement par la base et ses restes sont, de bas en haut, les chiffres de son équivalent dans la base choisie. Lorsque le résultat de la division est zéro, le processus s'arrête. la réponse en équivalent binaire sera 101111 e2

Source / Exemple :


// Nom             :   Equivalent binaire
// Description     :   transforme un nombre décimal (base 10) en une base quelconque par division successive
// Auteur          :   trioy
// Date            :   28.01.03
//Préconditions    :    Aucune
#pragma hdrstop
# include <iostream.h>
# include <conio.h>
# include <iomanip.h>
# include <math.h>

//---------------------------------------------------------------------------

void main (void)
{
int tabl[255]   ;
int i, base, nbre, reste, resultat, cpt;

i = 0;
cpt = 0 ;
cout <<endl<< "Veuillez saisir un nombre a transformer"<<endl;
cin>>nbre;
do
    {
    cout<< "veuillez saisir une base allant de 1 à 10"<<endl;
    cin >> base;
    }
while (base<1 || base >10);

do
    {
    cpt= cpt +1 ;
    resultat = nbre / base;
    reste = nbre % base ;
    tabl[i++] = reste;
    nbre = resultat;
    }
while (resultat != 0);

for (i = cpt -1; i>=0;i--)
    cout << setw(3) << tabl[i];
getch();
}

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.