Ich möchte zwei binäre Zahlen der selben Länge addieren und habe dazu das hier geschrieben:
Es kommen leider nicht die richtigen Ergebnisse raus. Wo liegt mein Fehler?
Java:
public boolean[] add(boolean[] dest, boolean[] src){
boolean uebertrag = false;
for(int i=dest.length; i==0; i--){
if(dest[i]==false && src[i]==false){
if(uebertrag==false){
dest[i]=false;
uebertrag=false;
}
if(uebertrag==true){
dest[i]=true;
uebertrag=false;
}
}
if(dest[i]==false && src[i]==true){
if(uebertrag==false){
dest[i]=true;
uebertrag=false;
}
if(uebertrag==true){
dest[i]=false;
uebertrag=true;
}
}
if(dest[i]==true && src[i]==false){
if(uebertrag==false){
dest[i]=true;
uebertrag=false;
}
if(uebertrag==true){
dest[i]=false;
uebertrag=true;
}
}
if(dest[i]==true && src[i]==true){
if(uebertrag==false){
dest[i]=false;
uebertrag=true;
}
if(uebertrag==true){
dest[i]=true;
uebertrag=true;
}
}
}
return dest; // das Ergebnis soll am Ende in dest stehen; eine Umwandlung in Binärzahlen soll vor Berechnung nicht stattfinden
}