안녕하세요 ㅎ;;
질문이있습니다. 에디트창에 10진수값를 입력하면 2진수로 변환되게 만들었는데,
이것을 15줄이하로 더 줄일수있을지 궁금합니다.
도와주세요;;;
procedure TForm1.Button1Click(Sender: TObject);
var
E : array[1..31] of integer;
A,B,C,D : integer;
begin
D := strToint(Edit1.text);
C := 1;
Edit1.text := '';
repeat
A := D div 2;
B := D mod 2;
if B = 0 then
begin
E[C] := 0;
C := C + 1;
D := A;
end
else
begin
E[C] := 1;
C := C + 1;
D := A;
end;
until
D < 2;
E[C] := 1;
repeat
Edit1.text := (Edit1.text + inttostr(E[C]));
C := C -1;
until
C = 0;
end;
end.
procedure TForm1.Button1Click(Sender: TObject);
var
Value : Integer;
StrBin: string;
begin
StrBin := '';
Value := strToint(Edit1.text);
repeat
if Odd(Value) then
StrBin := '1' + StrBin
else
StrBin := '0' + StrBin;
Value := Value shr 1;
until Value = 0;
Edit1.text := StrBin;
end;