テキスト ファイルをレコード配列に読み込んでいます。テキスト ファイル内のデータの一部は、プログラムの成績とテストの成績です。プログラムまたはテスト値をレコード内のフィールドとして折りたたむために、整数の配列を宣言できますか? その場合、フィールド内の個々のプログラム値にアクセスするにはどうすればよいですか? たとえば、このようにレコードを宣言できますか? もしそうなら、たとえばtest[3]からデータを入力またはアクセスするにはどうすればよいですか?
nametype = record
first : string[10];
mi : string[3];
last : string[30];
end;
stype = record
id : integer;
name : nametype;
prog : array[1..10] of integer;
test : array[1..3] of integer;
progave, quizave : real;
average : double;
grade : char;
end;
sarraytype = array[1..100] of stype;
var
student : sarraytype;
だから、私が立ち往生しているのは、これらの配列を読み取っていると思います。これまでのところ、私の読書のために私は持っています:
procedure TstudentData.openButtonClick(Sender: TObject);
begin
var i : integer;
if open.execute then
begin
assignfile(inf,open.FileName);
reset(inf);
i := 1;
while not eof(inf) do with student[i] do
begin
readln(inf, id, name.first, name.mi, name.last);
i := i + 1;
end;
end;
i:=1;
end;
私は他のデータを読み取っていますが、prog および test 配列を読み取る方法について完全に途方に暮れています。