Top.Mail.Ru
Ответы

Pascal/Паскаль работа с текстовыми документами.

Суть задачи: Программа создаёт на компьютере базу данных со списком студентов и для каждого студента есть следующее описание (с помощью record): Имя, Фамилия, Группа, Предметы (Массив строк из 4 элементов), Оценки к этим предметам (Массив цифр из 4 элементов) . Затем вывести имена всех студентов которые учатся на "хорошо" и "Отлично".
Я сделал программу которая создаёт базу данных. Но! Если для базы данных я использую формат text, то в базу данных всё заносится нормально, а если file of spisok(spisok:record), то выводится через ж.. , в общем плохо выводится. Привожу код программы с file of spisok.

type

spisok=record

Fname,Lname:string;

group:string;

predmet:array [1..4] of string;

mark:array [1..4] of integer;

end;

var

kol,i,j:integer;

baza:file of spisok;

list:spisok;

c:char;

rezfind:boolean;

kolvo:integer;

begin

assign(baza,'baza.txt');

rewrite(baza);

i:=1;

writeln('Введите информацию о студентах! ');

with list do

repeat

write('Имя: ');

readln(Fname);

write('Фамилия: ');

readln(Lname);

write('Группа: ');

readln(group);

for j:=1 to 4 do

begin

write('Предмет: ');

readln(predmet[j]);

write('Оценка: ');

readln(mark[j]);

end;

write(baza,list);

write('Хотите продолжить? (Y/N)');

readln(c);

until (c<>'Y') and (c<>'y');

close(baza);

end.

Вот что выводит:

Dima Okrugko ita31 v v v v v - это типа названия предметов :-)          

Вопрос в следующем, как мне считать с документа строки с оценками, чтобы сравнить каждую оценку с 4 и если каждая из 4 оценок для каждого студента больше или равна 4, то вывести имя студента (данные о нём) на экран?

Прим. По словам моего преподавателя, это очень легко. НО я не понимаю. Работа с файловыми переменными всегда была моей слабой стороной) Help)

По дате
По рейтингу
Аватар пользователя
Искусственный Интеллект
11лет

Потому что ты, скорее всего, пытаешься читать текстовый файл в бинарном виде. А оно так не работает.
Или наоборот, пытаешься посмотреть созданный двоичный файл текстовым редактором.