unit UZahlensysteme;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;
type
TForm1 =
class(TForm)
zahledt: TEdit;
ausgabepanel: TPanel;
RadioGroup1: TRadioGroup;
RadioGroup2: TRadioGroup;
wandelnbutton: TButton;
clearbutton: TButton;
procedure clearbuttonClick(Sender: TObject);
procedure wandelnbuttonClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.clearbuttonClick(Sender: TObject);
begin
zahledt.text := '
';
ausgabepanel.caption := '
';
end;
function DezinDual (
var ewert : integer):
String;
var n, divwert, modwert : integer; Feld :
array of integer;
begin
n := 0;
while ewert > 0
do
begin
setlength(Feld,high(Feld)+2);
divwert := ewert
div 2;
ewert := divwert;
modwert := ewert
mod 2;
Feld[n] := modwert;
inc(n);
end;
end;
{function DezinDual (ewert : integer):String;
var erg : String;
begin
erg :='';
while ewert > 0 do begin
erg := inttostr(ewert mod 2) + erg;
ewert := ewert div 2;
end;
result:= erg;
end; }
procedure TForm1.wandelnbuttonClick(Sender: TObject);
var ewert, ergebnis, Feld, erg : integer;
n :
array of string;
begin
ewert := strtoint(zahledt.text);
//DezinDual (ewert);
DezinDual (ewert);
//ausgabepanel.Caption := inttostr(erg);
ausgabepanel.caption := inttostr(Feld[n]); ----> hier ist der Fehler =
Array Type required... Hab ich
in der Funktion u. Proc
//ausgabepanel.caption := IntToHex(ewert,4);
end;
end.