Delphi- problem z kalkulatorem

0

Witam mam do napisania prosty kalkulator, który będzie obliczać:
a) wartość bezwzględna x,
b) x do kwadratu,
c) pierwiastek z x,
d) część dziesiętna x,
e) zaokrąglenie x w górę,
f) zaokrąglenie x w dół,
g) logarytm naturalny z X + 1,

Mam problem z podpunktem c, wiem że trzeba użyć SQRT ale nie wiem do końca jak, oto kod który napisałem:

procedure TForm1.PierwiastekClick(Sender: TObject);
var x,z:integer;
begin
x:=strtoint(edit1.Text);
z:=sqrt(x);
Rownasie.Caption:=inttostr(z);
end;

Wyskakuje mi błąd przy z:=sqrt(x), wydaje mi się że może to być coś ze zmienna... Proszę o szybką pomoc :)

0

Posdtawy, podstawy i jeszcze tysiąc razy PODSTAWY [!!!] :P Naucz się ich, zanim
cokolwiek będziesz tworzył w jakim kolwiek języku. Przecież błąd, jaki pokazal Ci
kompilator "mówi" wszystko. Zastosowałeś złe typy. I funkcja Sqrt zwraca liczbę,
ale nie całkowitą - tylko zmienno przecinkową. A i trzeba czytać błedy kompilacji.

var
  X : integer;
  Z : Extended;
begin
  X := StrToInt(Edit1.Text);
  Z := Sqrt(X);
  Caption := FloatToStr(Z);
end;
0

Użyj typów zmiennoprzecinkowych. Integer służy do przechowywania liczb całkowitych.

//edit: olesio był szybszy

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