Показать сообщение отдельно
  #1  
Старый 28.10.2009, 18:09
Athen Athen вне форума
Прохожий
 
Регистрация: 27.11.2007
Сообщения: 16
Репутация: 10
По умолчанию почему выдает ошибку: Operator not applicable to this operand type?

почему выдает ошибку: Operator not applicable to this operand type?
Код:
procedure TForm1.Button2Click(Sender: TObject);
var
  P,G,X,K,M,a,b,Y:integer;
begin
P:=strtoint(Edit1.Text);
G:=strtoint(Edit2.Text);
X:=strtoint(Edit3.Text);
K:=strtoint(Edit5.Text);

if ((P>G)and(X<P))and((K<(P-1))and(K>1)) then
 begin
  Y:=exp(X*ln(G)) mod P;  // на этой строке ошибка!
  Edit4.Text:=inttostr(Y);
 end
else
messagebox(0, pchar('Вы ввели значения неправильно! P>G, X<P и 1<K<P-1'),pchar('ВНИМАНИЕ!'),mb_iconinformation+mb_ok);
end;

всю голову сломала, все типы данных перепробовала! что-то не так с mod скорее всего...
Ответить с цитированием