Einzelnen Beitrag anzeigen

diavy

Registriert seit: 11. Apr 2012
54 Beiträge
 
#1

Konversion von dezimal zu binär

  Alt 31. Mai 2012, 13:05
Hallo zusammen, ich hab mal wieder ein Problem.

Meine Aufgabe ist es, ein Programm zu schreiben, das ein Zahl(<>0) liest und diese dann in binär tranformiert.

Sprich: 43 --> 101011 wegen 1*2^5+0*2^4...

Vorneweg, ich habe delphi 6, da war die math.pas nicht dabei. Diese musste ich downloaden, da die Funktion n^i nicht funktionniert hat. Ich hab es dort gespeichert: C:\Program Files (x86)\Borland\Delphi6\Source\Rtl\Sys, um die Funktion 'power' verwenden zu können.

Als "Information" kommt nach Eingeben der Zahl '...raised too many consecutive exceptions....process stopped. use step or run to continue.'

Zum Script:

Delphi-Quellcode:
program Project2;

{$APPTYPE CONSOLE}

uses
  SysUtils,math;

var
number:extended;
i,k:integer;
square:array of integer;

begin
  { TODO -oUser -cConsole Main : Insert code here }
readln(number);
i:=0;
while number>power(2,i) do
        inc(i);
k:=i;
while (number<>0) do
        begin
        while number>power(2,i) do
                inc(i);
        i:=i-1;
        number:=(number-(power(2,i)));
        square[i]:=1;
        end;
for i:=k downto 0 do
        writeln(square[i]);
readln;
end.

Wär sehr nett wenn wer mir sagen könnte was ich falsch gemacht habe.
LG
  Mit Zitat antworten Zitat