Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.05.07;
Скачать: [xml.tar.bz2];

Вниз

хм...   Найти похожие ветки 

 
Holod   (2006-04-21 07:31) [0]

Уменя тут возникли сомнения - можно ли переменной, скажем x присвоить столбец компонента StringGrid: x:=StrToFloat(StringGrid1.Cells[1,i]);
Или это некорректно, нужно, к примеру создать массив. Извиняюсь за такой тупой вопрос, заранее спасибо!


 
balepa ©   (2006-04-21 07:45) [1]

x:=StrToFloat(StringGrid1.Cells[1,i]);

Это не есть присвоение переменной x столбца ето есть присвоение X значения ячейки [1,i] в итоге в x будет последнее число в [1,i] если только эта строчка (x:=StrToFloat(StringGrid1.Cells[1,i]);) написана у тебя в цикле


 
Holod   (2006-04-21 07:50) [2]

А как тогда умножить 1 столбец SG на другой, и результат отобразить в третьем?


 
balepa ©   (2006-04-21 07:54) [3]


> Holod   (21.04.06 07:50) [2]


Так и делай как написал.


 
Holod   (2006-04-21 07:58) [4]

Он тогда грязно ругается, говорит, что "is not a valid floating point value".


 
balepa ©   (2006-04-21 08:04) [5]

Приведи полностью "проблемный" код.


 
Tans   (2006-04-21 08:05) [6]

var
 Form1: TForm1;
  i: integer;
   x, y,a0,a1,F,SXi,SYi,SXi_Yi,n,Z,SXi_Yi1,Z1,Z2: Double;
   h,a:real;
implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
SXi:=0;
SYi:=0;
SXi_Yi:=0;
n:=10;
with StringGrid1 do
begin
     Cells[0, 0] := "¹";
     Cells[1, 0] := "x";
     Cells[2, 0] := "y";
     Cells[3, 0] := "F(x)";
begin
for i := 1 to StringGrid1.RowCount - 1 do
Z1:=StrToFloat(StringGrid1.Cells[1,i]);
Z2:=StrToFloat(StringGrid1.Cells[2,i]);
Z:=Z1*Z2;
Cells[0, i] := IntToStr(i);

     x:=x+x*h;
     y:=(x);
     a0:=(SXi_Yi-(SXi*SYi))/(SXi*(1-n));
     a1:=(SYi-a0*n)/ SXi;
     F := a0+a1*x;
     h:=0.1;
     Z:=x*y;
StringGrid1.Cells[1,i]:= FloatToStr(x);
StringGrid1.Cells[2,i]:= FloatToStr(y);
StringGrid1.Cells[3,i]:= FloatToStr(F);
SXi:=SXi+ StrToFloat(StringGrid1.Cells[1,i]);
SYi:=SYi+ StrToFloat(StringGrid1.Cells[2,i]);
SXi_Yi:= SXi_Yi+(Z1*Z2);
SXi_Yi1:=Z;

end;
end;
end;


 
balepa ©   (2006-04-21 08:09) [7]

Tans и Holod одно лицо ?
У тебя наверное в StringGrid1[1,i] вместо 0,1 стоит 0.1 (точка или запятая)


 
Tans   (2006-04-21 08:15) [8]

Да нет, мы просто делаем одно и тоже - учимся вместе.
А насчет точки или запятой - эта процедура на событие FormCreate. Как теперь ее исправить?


 
balepa ©   (2006-04-21 08:20) [9]


> Tans   (21.04.06 08:15) [8]


Наверное заменить точку на зяпятую
Или использовать
function StrToFloat(const S: string; const FormatSettings: TFormatSettings): Extended; overload;


 
Tans   (2006-04-21 08:27) [10]

А как заменить точку на запятую, если таблица сама заполняется!?


 
balepa ©   (2006-04-21 08:38) [11]

У тебя код из серии "Он еще и работает"
Если надо весь этот кусок в цикле выполнять где begin после DO

Z1:=StrToFloat(StringGrid1.Cells[1,i]);
Z2:=StrToFloat(StringGrid1.Cells[2,i]);
Z:=Z1*Z2;
Cells[0, i] := IntToStr(i);

    x:=x+x*h;
    y:=(x);
    a0:=(SXi_Yi-(SXi*SYi))/(SXi*(1-n));
    a1:=(SYi-a0*n)/ SXi;
    F := a0+a1*x;
    h:=0.1;
    Z:=x*y;
StringGrid1.Cells[1,i]:= FloatToStr(x);
StringGrid1.Cells[2,i]:= FloatToStr(y);
StringGrid1.Cells[3,i]:= FloatToStr(F);
SXi:=SXi+ StrToFloat(StringGrid1.Cells[1,i]);
SYi:=SYi+ StrToFloat(StringGrid1.Cells[2,i]);
SXi_Yi:= SXi_Yi+(Z1*Z2);
SXi_Yi1:=Z;


with StringGrid1 do
begin
    Cells[0, 0] := "¹";
    Cells[1, 0] := "x";
    Cells[2, 0] := "y";
    Cells[3, 0] := "F(x)";
begin //убери а в конце один END убери



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2006.05.07;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.018 c
3-1142597471
Гость1111
2006-03-17 15:11
2006.05.07
Работа с Метаданными в ORacle


4-1139825664
Цукор5
2006-02-13 13:14
2006.05.07
SendMessage при разных вызовах форм


9-1122608595
Kevinson
2005-07-29 07:43
2006.05.07
2D анимация в Opengl.


2-1145508928
Nataly
2006-04-20 08:55
2006.05.07
SQL


2-1145633091
mahab
2006-04-21 19:24
2006.05.07
DVD-RW





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский