Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   [решено] Заполнение экземпляров класса (http://forum.oszone.net/showthread.php?t=171133)

Snake750 24-03-2010 20:04 1376333

Заполнение экземпляров класса
 
Вложений: 1
Доброго времени суток. Помогите пожалуйста разобраться. Имеется вот что:
Описываем класс Студ в котором содержатся имена студентов и оценки по дисциплинам :Программирование, Математика, Черчение, Русский и Суммарный бал по дисциплинам.
Код:

type 
TStud = Record
  Name:string[20];
  Progr:real; 
  Mathem:real;
  Cherchen:real; 
  Russian:real;
  SummPoDisc:real; 
end;

Создаю экземпляры класса
Код:

var  a:array[1..5] of TStud;
Написал процедуру которая заполняет данные экземпляров класса TStud из StringGrid1.
Код:

Procedure ReadInfoFromUser(x:TStud;                  i,j:integer);
begin
        x.Name:=(form1.stringgrid1.Cells              [i,j]);
        x.Progr:=strtofloat(form1.stringgrid1.Cells  [i+1,i+1]);
        x.Mathem:=strtofloat(form1.stringgrid1.Cells  [i+2,j]);
        x.Cherchen:=strtofloat(form1.stringgrid1.Cells[i+3,j]);
        x.Russian:=strtofloat(form1.stringgrid1.Cells [i+4,j]);
        x.SummPoDisc:=0;
        x.SummPoDisc:= ( x.Progr+ x.Mathem + x.Cherchen+ x.Russian);
        form1.Stringgrid1.Cells                      [5,j]:=floattostr( x.SummPoDisc);
end;

Вызываю процедуру:
Код:

For i:=1 to 5 do   
begin
  ReadInfoFromUser(a[i],0,i);
end;

И вот тут почему то не заполняются значения экземпляров класса, но значение SummPoDisc считается и заполняется в StringGrid.
Прилагается исходник для удобства видения.

Snake750 25-03-2010 13:51 1376839

Господа, помогите разобраться,2 день уже понять не могу в чем проблема

Snake750 25-03-2010 18:32 1377083

Товарищи с другого ресурса подсказали
Код:

Procedure ReadInfoFromUser(var x:TStud; i,j:integer);


Время: 19:43.

Время: 19:43.
© OSzone.net 2001-