vendredi 24 avril 2015

Binäraddition

Ich möchte zwei binäre Zahlen der selben Länge addieren und habe dazu das hier geschrieben:
Java Code:

  1. public boolean[] add(boolean[] dest, boolean[] src){
  2. boolean uebertrag = false;
  3. for(int i=dest.length; i==0; i--){
  4. if(dest[i]==false && src[i]==false){
  5. if(uebertrag==false){
  6. dest[i]=false;
  7. uebertrag=false;
  8. }
  9. if(uebertrag==true){
  10. dest[i]=true;
  11. uebertrag=false;
  12. }
  13. }
  14.  
  15. if(dest[i]==false && src[i]==true){
  16. if(uebertrag==false){
  17. dest[i]=true;
  18. uebertrag=false;
  19. }
  20. if(uebertrag==true){
  21. dest[i]=false;
  22. uebertrag=true;
  23. }
  24. }
  25.  
  26. if(dest[i]==true && src[i]==false){
  27. if(uebertrag==false){
  28. dest[i]=true;
  29. uebertrag=false;
  30. }
  31. if(uebertrag==true){
  32. dest[i]=false;
  33. uebertrag=true;
  34. }
  35. }
  36.  
  37. if(dest[i]==true && src[i]==true){
  38. if(uebertrag==false){
  39. dest[i]=false;
  40. uebertrag=true;
  41. }
  42. if(uebertrag==true){
  43. dest[i]=true;
  44. uebertrag=true;
  45. }
  46. }
  47. }
  48. return dest; // das Ergebnis soll am Ende in dest stehen; eine Umwandlung in Binärzahlen soll vor Berechnung nicht stattfinden
  49. }

Es kommen leider nicht die richtigen Ergebnisse raus. Wo liegt mein Fehler?


Binäraddition

0 commentaires:

Enregistrer un commentaire