ratlos Gast
|
Verfasst am: 13. März 2006 22:38 Titel: dezimal nach hexadezimal! |
|
|
ich hab wieder mal ein delphi-problem und hoffe ihr könnt mir weiter helfen....
ich soll ein programm programmieren, das dezimalzahl in hexadeziamlzahlen umwandelt - hier kommt mein quelltext:
Code: | unit deztohexu1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Edit1: TEdit;
Button1: TButton;
Edit2: TEdit;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
i,
dez,
HexPotenz: integer;
bin: string;
hex: string;
faktor: byte;
AZiffern: array[0..15] of string;
implementation
{$R *.dfm}
procedure FormCreate(Sender: TObject);
begin
for i:=0 to 9 do
AZiffern[i]:= IntToStr(i);
AZiffern[10]:= 'A';
AZiffern[11]:= 'B';
AZiffern[12]:= 'C';
AZiffern[13]:= 'D';
AZiffern[14]:= 'E';
AZiffern[15]:= 'F';
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
dez:= StrToInt(edit1.text);
bin:= '';
HexPotenz:= 1;
for i:=1 to 5 do
HexPotenz:= HexPotenz * 16;
for i:=1 to 6 do
begin
faktor:= dez div HexPotenz; {wird wert zwischen 0 und 15}
hex:= AZiffern[faktor]; {im array wird der zahl (0-15) die richtige ziffer/
der richtige Buchstabe zugeordnet (0-F)}
bin:= bin + hex;
dez:= dez - faktor * HexPotenz;
HexPotenz:= HexPotenz div 16;
end;
edit2.text:= bin;
end;
end. |
im edit1 feld soll eine beliebige zahl eingegeben werden, wenn man auf button1 klickt, soll das ganze im edit2-feld umgewandelt erscheinen!
das programm lässt sich kompilieren, allerdings passiert nichts, wenn ich auf den button klicke....
findet ihr den fehler? |
|