Brauche Hilfe für eine Methode zur Umwandlung von Binärzahl in Dezimalzahl !?

xam90

Mitglied
Hallo 🙂

für die Uni hab ich eine Aufgabe und zwar muss ich eine Methode "static int to Decimal(String n)"
schreiben in der eine Binärzahl n>=0 erwartet wird, die Dezimalzahl zurück gegeben wird und dabei soll das Horner-Schema verwendet werden... hab aber leider keine Idee :/ :rtfm::noe:
 
Und wie soll man dir jetzt helfen? Wo hakts? Das Horner Schema wird auf Wikipedia erklärt.
 
Wenn die Binärzahl so aussieht 1011, dann kann man das auch schreiben als
1*2^3 + 0*2^2 + 1*2^1 + 1
Nach Horner Schema umgeformt: ((1*2 + 0)*2 + 1)*2 + 1
Da geht mit einer for Schleife.
Java:
String binaerzahl = "1011";
int zahl = 0;
for(char c: binaerzahl.toCharArray()) {
    int ziffer = c-'0'; //ergibt entweder 0 oder 1
    zahl = ...
}
 
Hallo,

um aus einem String die Zahlen auszulesen kann man auch die Methode Character.digit(char c, int basis) nehmen.

D.h. wenn man einen String s = "10010" hat und die erste Stelle möchte macht man:

Character.digit(s.charAt(0), 10) so bekommt man die 1.


Grüße Benny
 

Zurück
Oben