Ich gehe meine Altklausuren momentan durch und bin auf ein Problem gestoßen, dass ich ohne weiteres nicht selber lösen kann. Wäre euch dankbar, wenn ihr mir helfen könntet!
Code:
Die folgende Methode berechnet die Potenz b^e mit Hilfe des Algorithmus Square and Multiply.
Also zum Beispiel:
sam(2,4) liefert 16
sam(3,3) liefert 27
public int sam(int b, int e) {
int result=1;
while (e>0) {
if (e%2==1)
result=result*b;
b=b*b;
e=e/2;
}
return result;
}
a) Falls ein negativer Wert e übergeben wird, soll das korrekte Ergebnis 1/be zurückgegeben werden. Beispiel: sam(2,-2)=0.25