Delphi, procent z liczby, string length itd

0

Witam serdecznie.
Chce zrobić programik w Delphi, że po naciśnięciu buttona wyciąga mi procent z liczby wpisanej w Edit.
W Edit1 jest wpisane '35', a w Edit2 wpisane '60'. Po naciśnięciu buttona w Edit3 by wyciągnęło ile procent z liczby 60 to 35.
Nie znalazłem jakiś dobrych informacji w necie na ten temat. Więc spróbowałem po prostu zrobić tak:

Button1 Click:

var
A, B, C : Real;
begin

A := StrToFloat(edit1.text);
B := StrToFloat(edit2.text);
C := A / B;
Edit3.text:=FloatToStr (C);


Dzieli liczbe przez liczbę i wychodzi, np 0,5. Więc wystarczy pomnożyć razy 100 i mamy procent z liczby.
Problem w tym, że jak podziele liczbę np 655544 przez 54322222 to wyjdzie mi wynik np 0.4542354354344444.
A chce by w Edit pojawił się wynik max '0.45'. Czyli 2 pierwsze liczby po przecinku.
I nie wiem jak to zrobić.
Nie wiem o co chodzi z Lengts String. String.Delete itd.
Czy da się szybko zrobić w Delphi wyciąganie procentu z liczby, czy musze tak się męczyć najpeirw dzieląc, potem mnożąc razy 100 a potem jeszcze te string.delete?

0

a Czy moglibyście szybko powiedzieć co zrobić by z liczby np 111,432543543 albo 22,543543 zostało po nacisnieciu buttona tylko 111 oraz 22? Czyli zostaja tylko cyfry przed przecinkiem

0

Przeczytaj do końca i uważnie stronę, do której podałem link.

0

no tak przeczytałem, rozumiem mniej więcej zarys, ale nie mam pojęcia gdzie to wstawić:

Writeln(FormatFloat('0', edit3.text));

Nie znam się za bardzo na Delphi. Czy to wstawić w guzik czy gdzie.

a Gdzie wstawić to?
function FormatFloat(const Format: string; Value: Extended): string; overload;
function FormatFloat(const Format: string; Value: Extended; const FormatSettings: TFormatSettings): string; overload;

0

Po prostu ręce i wszystko inne opada. Powinienem przenieść ten wątek do kosza z adnotacją o jego autorze, ale masz...

var
  A, B, C : Real;
begin
  A := StrToFloat(Edit1.text);
  B := StrToFloat(Edit2.text);
  C := A / B;
  Edit3.text := FormatFloat('#', C);
end;

I nie trzeba znać się na Delphi tylko logicznie myśleć, że Writeln wypisuje string więc to tylko przykład. I nazywaj sensownie komponenty, a nie samym Edit... bo jak z takim banałem masz problem to później dalej nie ogarniesz.

0
Edit3.text:=FormatFloat('0',C)
0

Wiem wstyd. Dziekuje za pomoc i usuwam się w cień.

1 użytkowników online, w tym zalogowanych: 0, gości: 1