Convertir un nombre d'une base vers une autre base en C
#include < stdio .h="">
long convertInBase10 (long n, int base)
{
long quotient = n / 10;
Rest = n % 10;
if (Quotient == 0)
return bleibt;
else
return convertingBase10 (Quotient, Basis) * Basis + Rest;
}
long convertEnBase2 (long n, int base)
{
long quotient = n / 2;
Rest = n % 2;
if (Quotient == 0)
return bleibt;
else
return convertEnBase2 (Quotient, Basis) * Basis + Rest;
}
long convertInBase4 (long n, int base)
{
long quotient = n / 4;
Rest = n % 4;
if (Quotient == 0)
return bleibt;
else
return convertenBase4 (Quotient, Basis) * Basis + Rest;
}
long convertInBase8 (long n, int base)
{
long quotient = n / 8;
langer Rest = n % 8;
if (Quotient == 0)
return bleibt;
else
return convertenBase8 (Quotient, Basis) * Basis + Rest;
}
long convertInBase16 (long n, int base)
{
long quotient = n / 16;
langer Rest = n % 16;
if (Quotient == 0)
return bleibt;
else
return convertingBase16 (Quotient, Basis) * Basis + Rest;
}
int main() {
long n = 17;
int base = 10;
//Dezimal --> base(2,4,8,16)
printf ("%ld zur Basis %2d = %ld zur Basis 2\n",n, base, convert to Base2 (n, base);
printf ("%ld zur Basis %2d = %ld zur Basis 4\n",n, Basis, in Basis 4 konvertieren (n, Basis);
printf ("%ld zur Basis %2d = %ld zur Basis 8\n",n, Basis, in Base8 konvertieren (n, base) );
printf ("%ld zur Basis %2d = %ld zur Basis 16\n",n, Basis, konvertieren inBase16 (n, base);
//Binär --> Dezimal
n = 1010;
= 2;
printf ("%ld zur Basis %2d = %ld zur Basis 10\n",n, Basis, in Basis 10 konvertieren (n, Basis);
//hexadezimal --> Dezimal
n = 124;
= 16;
printf ("%ld zur Basis %2d = %ld zur Basis 10\n",n, Basis, in Basis 10 konvertieren (n, Basis);
//base 8 --> binär
n = 12;
= 8;
printf ("%ld zur Basis %2d = %ld zur Basis 10\n",n, Basis, in Basis 10 konvertieren (n, Basis);
0 zurückgeben;
}