![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Пишу программу БД в Делфи надо в ней кое-что подсчитать... формула такова
DBEdit1.Text:=floattostr((1.1*(DataModule3.Kod_DTa ble1.FieldByName('D_Ёмкости').AsFloat*3.14*DataMod ule3.Kod_BTable1.FieldByName('B_Стенки').AsFloat*D ataModule3.Kod_HTable1.FieldByName('H_Ёмкости').As Float+2*(3.14*DataModule3.Kod_DTable1.FieldByName( 'D_Ёмкости').AsFloat*DataModule3.Kod_DTable1.Field ByName('D_Ёмкости').AsFloat)/4*DataModule3.Kod_BTable1.FieldByName('B_Стенки'). AsFloat)*1.6*DataModule3.Kod_STable1.FieldByName(' S_Стеклопластика').AsFloat))+(floattostr(Edit2.Tex t*2))+(floattostr(Edit4.Text)}; Формула работала пока не вставила последние слогаемые +(floattostr(Edit2.Text*2))+(floattostr(Edit4.Text )}; При компл. выдается ошибка 1.[Error] Unit11.pas(71): Incompatible types: 'String' and 'Integer' [2.Error] Unit11.pas(71): There is no overloaded version of 'FloatToStr' that can be called with these arguments 3.[Fatal Error] Project1.dpr(15): Could not compile used unit 'Unit11.pas' Как исправить эту ошибку? |
#2
|
|||
|
|||
![]() Код:
+(floattostr(Edit2.Text*2))+(floattostr(Edit4.Text ); у Editа свойство Text -string т.е. в вашем случае: +(strtofloat(Edit2.Text)*2)+(strtofloat(Edit4.Text )) Последний раз редактировалось Black Raider, 08.06.2010 в 11:55. |
#3
|
||||
|
||||
![]() ну во-первых за такой код стрелять надо
![]() а в вообще ошибка в том что к вещественному типу ты добавляешь строку. последние слагаемые должны быть такими: Код:
(strtofloat(Edit2.Text*2))+(strtofloat(Edit4.Text) Последний раз редактировалось Admin, Сегодня в 10:32. |
#4
|
|||
|
|||
![]() AsFloat))+((strtofloat(Edit2.Text)*2)+(strtofloat( Edit4.Text )));
Вот я так и сделала как вы говорите... в итоге ошибка: [Error] Unit11.pas(71): Incompatible types: 'String' and 'Extended' и программа не компел.. ![]() |
#5
|
|||
|
|||
![]() procedure TForm11.Button1Click(Sender: TObject);
begin DBEdit1.Text:=floattostr((1.1*(DataModule3.Kod_DTa ble1.FieldByName('D_Ёмкости').AsFloat*3.14*DataMod ule3.Kod_BTable1.FieldByName('B_Стенки').AsFloat*D ataModule3.Kod_HTable1.FieldByName('H_Ёмкости').As Float+2*(3.14*DataModule3.Kod_DTable1.FieldByName( 'D_Ёмкости').AsFloat*DataModule3.Kod_DTable1.Field ByName('D_Ёмкости').AsFloat)/4*DataModule3.Kod_BTable1.FieldByName('B_Стенки'). AsFloat)*1.6*DataModule3.Kod_STable1.FieldByName(' S_Стеклопластика').AsFloat))+((strtofloat(Edit2.Te xt)*2)+(strtofloat(Edit4.Text ))); end; Это вся процедура |
#6
|
||||
|
||||
![]() Цитата:
м.б. так Код:
floattostr((strtofloat(Edit2.Text)*2)+strtofloat(Edit4.Text)) |
#7
|
|||
|
|||
![]() Код:
floattostr( (1.1* (DataModule3.Kod_DTable1.FieldByName('D_Ёмкости').AsFloat*3.14* DataModule3.Kod_BTable1.FieldByName('B_Стенки').AsFloat* DataModule3.Kod_HTable1.FieldByName('H_Ёмкости').AsFloat +2* (3.14*DataModule3.Kod_DTable1.FieldByName( 'D_Ёмкости').AsFloat* DataModule3.Kod_DTable1.Field ByName('D_Ёмкости').AsFloat ) /4*DataModule3.Kod_BTable1.FieldByName('B_Стенки'). AsFloat ) *1.6*DataModule3.Kod_STable1.FieldByName(' S_Стеклопластика').AsFloat ) +((strtofloat(Edit2.Te xt)*2)+(strtofloat(Edit4.Text )))); |
#8
|
|||
|
|||
![]() все сработало.. спасибо..
![]() ![]() |
#9
|
||||
|
||||
![]() я же русским языком написал:
Цитата:
вот из-за такой невнимательности и рушиться мир на земле ![]() Последний раз редактировалось Admin, Сегодня в 10:32. |