мод и кейс не работают вместе для delphi - PullRequest
0 голосов
/ 03 ноября 2018

Я пытаюсь сделать калькулятор в Delphi, но у меня есть проблема в области модов, я не нашел, как ее решить.

procedure TfrmHesapMakinesi.Button1Click(Sender: TObject);
var
sayi1:double;
sayi2:double;
sonuc:double;
islem:byte;
begin
       islem:=(Sender as TButton).Tag;
       sayi1:=strtofloatdef(edtSayi1.Text,0);
       sayi2:=strtofloatdef(edtSayi2.Text,0);
   case islem of
    1:sonuc:=sayi1+sayi2;
    2:sonuc:=sayi1-sayi2;
    3:sonuc:=sayi1*sayi2;
    4:sonuc:=sayi1/sayi2;
    5:sonuc:=sayi1 mod sayi2; //ERROR
  else
    ShowMessage('İşlem seçiniz');
  end;
       lblsonuc.Caption:=floattostr(sonuc);


end;

1 Ответ

0 голосов
/ 03 ноября 2018

На будущее, пожалуйста, укажите полученную ошибку.

Но в этом случае легко понять ошибку. Оператор mod работает только с целочисленными переменными, и у вас есть double. Вы можете написать:

sonuc:= sayi1 - int(sayi1 / sayi2) * sayi2;  
...