Помощь - Поиск - Пользователи - Календарь
Полная версия: запутался в типах данных
Форум «Всё о Паскале» > Современный Паскаль и другие языки > Делфи
MiH@N
procedure TForm1.Button1Click(Sender: TObject);
var Ma,Mb,Mc : real;
a,b,c :integer;
begin
a:=StrToInt(Edit1.Text);
b:=StrToInt(Edit2.Text);
c:=StrToInt(Edit3.Text);
Ma:=sqrt(2*(sqr(b)+sqr©)-sqr(a))/2;
Mb:=sqrt(2*(sqr(a)+sqr©)-sqr(b))/2;
Mc:=sqrt(2*(sqr(b)+sqr(a))-sqr©)/2;
Edit4.Text:=intToStr(Ma);
Edit5.Text:=IntToStr(Mb);
Edit6.Text:=IntToStr(Mc);
end;


вопрос вот в чём: у Ma,Mb,Mc : real---но когда приковыриваешь их к полю (Edit4.Text:=intToStr(Ma);
Edit5.Text:=IntToStr(Mb);
Edit6.Text:=IntToStr(Mc);) то вылазит нестыковочка в типах данных----что надо поставить вместо IntToStr если числа не целые?
volvo
Наверное, FloatToStr?
MiH@N
спасибо.!! good.gif спасаешь!
а если брать случай с (Edit4.Text:=intToStr(Ma);--то что можно поставить вместо intToStr если вводить нецелое число??
volvo
Не понял, о чем ты? Вводить не целое? Тогда
var a: real;
...
a:=StrToFloat(Edit1.Text);

ты об этом?
MiH@N
ага.токмо чёт так не получается. вылазит:

Добавлено через 2 мин.
хотя мож я чё нето сделал..вот текст:
procedure TForm1.Button1Click(Sender: TObject);
var Ma,Mb,Mc : real;
a,b,c :real;
begin
a:=StrToFloat(Edit1.Text);
b:=StrToFloat(Edit2.Text);
c:=StrToFloat(Edit3.Text);
Ma:=sqrt(2*(sqr(b)+sqr©)-sqr(a))/2;
Mb:=sqrt(2*(sqr(a)+sqr©)-sqr(b))/2;
Mc:=sqrt(2*(sqr(b)+sqr(a))-sqr©)/2;
Edit4.Text:=FloatToStr(Ma);
Edit5.Text:=FloatToStr(Mb);
Edit6.Text:=FloatToStr(Mc);
end;
мисс_граффити
пиши 2,2
вместо 2.2
volvo
Судя по скриншоту у тебя разделителем должна быть не точка, а запятая... Введи не 2.2 а 2,2 для проверки...

Добавлено через 1 мин.
P.S. Ну или
begin
DecimalSeparator := '.';
a:=StrToFloat(Edit1.Text);
b:=StrToFloat(Edit2.Text);
c:=StrToFloat(Edit3.Text);
// и так далее ...

MiH@N
а в таком случае из за чего может получиться unknown directive 'a' :


(извиняюсь..сам не заметил)
volvo
Ты точно Var не забыл?
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.