C :: Aufgabe #171 :: Lösung #2
2 Lösungen
#171
Zahlen umwandeln: Binär zu Dezimal
Anfänger - C
von Nachbar
- 13.09.2017 um 14:19 Uhr
Schreibe eine Funktion, die Zahlen aus dem Dualsystem in Zahlen des Dezimalsystems umwandelt.
Beispiel:
Binär: 11010
Dezimal: 26
Beispiel:
Binär: 11010
Dezimal: 26
#2
von kathleenw (3600 Punkte)
- 26.06.2020 um 08:56 Uhr
// Zahlen aus den Binärsystem in das Dezimalsystem umwandeln
#include <stdio.h>
#include <string.h>
#include <math.h>
int anzahl(int zahl);
int stelle(int zahl, int stelle);
int main(void)
{
int binaer, dezimal;
int i, len, stellenziffer;
dezimal=0;
//Zahl eingeben
printf("Bitte gib eine binäre Zahl ein: ");
scanf("%d",&binaer);
//Länge ermitteln der Zahl
len = anzahl(binaer);
//Dezimale Zahl ermitteln
for (i=1;i<=len;i++) {
stellenziffer = stelle(binaer,i);
dezimal = dezimal + stellenziffer * pow (2,i-1);
}
//Zahl ausgeben
printf("Die dazugehörige Dezimalzahl ist %d. \n", dezimal);
return 0;
}
int stelle(zahl, stelle)
{
zahl = fabs(fmod(zahl/pow(10,stelle-1),10));
return zahl;
}
int anzahl(zahl)
{
int zeichen;
char buffer[100];
sprintf(buffer,"%d",zahl);
zeichen = strlen(buffer);
return zeichen;
}
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1
