Mo Logo [Home] [Lexikon] [Aufgaben] [Tests] [Kurse] [Begleitmaterial] [Hinweise] [Mitwirkende] [Publikationen]

Mathematik-Online-Aufgabensammlung: Lösung zu

Interaktive Aufgabe 1097: Programm zur Umwandlung von Dezimal in Binärzahlen


A B C D E F G H I J K L M N O P Q R S T U V W X Y Z


function b = dual(d)
% Wandelt einen Vektor mit Dezimalziffern in Dualziffern um.

% Initialisiere Dualziffern
b=[];

% Bearbeitung bis alle Dezimalziffern Null sind
while any(d)
  % Ungerade Ziffern feststellen
  u=mod(d,2);
  % Dualziffern um eine Stelle erweitern
  b=[u(end),b];
  
  % Division durch zwei: Alle ungeraden Ziffern um 1 reduzieren, alle
  % Stellen halbieren und die Überträge mit Faktor 5 um 1 versetzt addieren
  d=d-u;
  d=d/2;
  d(2:end)=d(2:end)+5*u(1:end-1);
end



[Zurück zur Aufgabe]

  automatisch erstellt am 5.  7. 2007