Objective-C :: Aufgabe #168
1 Lösung

Zahlen umwandeln: Binär zu Dezimal
Anfänger - Objective-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
Lösungen:

/********************************** * b2d.c Binär-Dezimal Konversion **********************************/ #include <stdlib.h> #include <stdio.h> #include <string.h> int b2d(const char *bin) { const char *pbin; int dec, base; base=1; dec=0; pbin=bin+strlen(bin); while (--pbin >= bin) { if (*pbin=='0' || *pbin=='1') { dec+=(*pbin-'0')*base; base<<=1; } else /* stop conversion at 1st invalid digit */ return -1; } return dec; } int main(void) { char bin[256]; printf("Binärzahl : "); scanf("%s", bin); printf("Dezimalzahl: %d\n", b2d(bin)); return 0; }