Страница 1 из 1

Проблемы с типами данных в Delphi

Добавлено: 17 май 2009, 14:53
paul11j
Пожалуйста подымите это:

Код: Выделить всё

s:=s+inttostr(int(exp(ln(ord(x[q])*strtoint(s4))) mod strtoint(s3));
Типы переменных:
s,x,s3,s4:string,q:integer.
Спасибо.

Re: Проблемы с типами данных в Delphi

Добавлено: 18 май 2009, 16:03
Игорь Акопян
а что, оно падало?

Re: Проблемы с типами данных в Delphi

Добавлено: 19 май 2009, 11:40
paul11j
Игорь Акопян писал(а):а что, оно падало?
Что не ясно? Проблемы у меня с формулой.

Потому что на десять девчонок по статистике девять ребят.

Добавлено: 19 май 2009, 15:08
BBB
Вот видите, Вы и сами все знаете! :)
Семь открывающих скобок на шесть закрывающих.

Re: Проблемы с типами данных в Delphi

Добавлено: 19 май 2009, 16:55
Игорь Акопян
дико извиняюсь, но фраза
&quot писал(а):Пожалуйста подымите это
вогнала меня в ступор
А так можно было и ошибку привести, может стало бы понятнее где скобки не хватает

Re: Проблемы с типами данных в Delphi

Добавлено: 19 май 2009, 19:11
paul11j
ахааха.там не в скобке проблема.вот правильно

Код: Выделить всё

w:=(trunc(exp(strtofloat(s4)*ln(strtofloat(inttostr(ord(x[q]))))))) mod (trunc(strtofloat(s3)));

Re: Проблемы с типами данных в Delphi

Добавлено: 19 май 2009, 20:28
Sheka
возможно ли чтобы функция floattostr(X) возвращала какую-то фигню, если х изменяется так:
...
x:=-1;
while x<=1 do begin
x:=x+0.001;
floattostr(x);
...
end;
...

Re: Проблемы с типами данных в Delphi

Добавлено: 20 май 2009, 11:16
Игорь Акопян
Sheka, если под "фигнёй" вы подразумеваете длинный хвост вида .00000000000351 - то да, это нормально
читать тут и тут

чтобы избавиться от хвостов используйте функцию
Format('%.2f', [X]); // .2 - вывод 2-х знаков после запятой

Re: Проблемы с типами данных в Delphi

Добавлено: 20 май 2009, 11:32
Duncon
Мну возбуждает подобный подход..
[syntax=Delphi]
function FloatToStrDig(const X: Extended; Digits: Integer = 3): string;
begin
Str(X::D igits, Result);
end;
[/syntax]

Re: Проблемы с типами данных в Delphi

Добавлено: 20 май 2009, 16:09
Sheka
если под "фигнёй" вы подразумеваете длинный хвост вида .00000000000351 - то да, это нормально
читать тут и тут
Спасибо за первое "тут".
даже не представлял, что такое возможно.

P.S. Под "фигней" я подразумевал что-то типа -7.3015691270939E-8.
я просто делал вывод в таблицу, и последних знаков не видел.