Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Файл записей

Автор: Гость 28.03.2007 22:09

В поиске находила по инфо по файлам записей,но сделать свою задачу не смогла.
Если можете-помогите.
Создать типизированный файл записей,решить задачу используя данный типа запись.
Условие:
О каждом студенте известно фамилия и оценка за экзамен(3,4,5).Вывести список студентов так,чтобы сначала шли фамилии тех кто получил 5,потом тех кто получил 4,а в конце всех остальных. Порядок следования студентов,получивших одну и туже оценку сохраняется!
Плиз,очень прошу помощи!

Автор: klem4 29.03.2007 0:13

Много очень похожих задач про студентов и оценки уже решены, ищи "Студенты", "Оценки" и т.д.

А смысл твоей задачи сводится к сортировке набори записей, находящихся с кажем в массиве, в который ты их прочитала из файла по полю "оценка".

Еще советую заглянуть сюда: http://forum.pascal.net.ru/index.php?showtopic=9198 и сюда http://forum.pascal.net.ru/index.php?showtopic=3584

Автор: Гость 29.03.2007 2:05

просмотрела,но нет.не сделала.
как произвести эту сортировку?

Автор: Гость 29.03.2007 4:23

Если кто-то может,то решите эту программу. Не понимаю я записи(((Сэнкс

Автор: Гость 3.04.2007 21:29

А если сделать файл тектовым, то программу оставлять такой такой же, только писать чтение из файла по-другому?

type stud=record
name:string;
bal:byte;
end;

var b:stud; f:text; i:byte;
begin
clrscr;
assign(f,'f.txt');
reset(f); writeln;
while not eof(f) do
begin
readln(f,b.name,b.bal);
writeln(b.name,' ',b.bal);
end;
close(f);

Где тут ошибка подскажите пжлста.....

Автор: Andrewshkovskii 3.04.2007 22:01

Записи можно записывать только в типизированные файлы,т.е в файл типа byte,ты записать, например b.bal ,не сможешь,т.к у него другой тип. объявление файла должно быть таким,

type stud=record
name:string;
bal:byte;
end;

var
f: file of stud;


Также чтение и запись в типизированные файлы производиться ТОЛЬКО с помощью процедур write и read.
Почитай книгу,записи не так уж и тяжело понять.Тут самое сложное это сортировка.

Автор: Гость 3.04.2007 22:25

А если выходной файл должен быть текстовым,то что делать? Сам файл создан,а впрограмме как?

Автор: Andrewshkovskii 3.04.2007 22:55

Цитата

Гость


В поиске находила по инфо по файлам записей,но сделать свою задачу не смогла.
Если можете-помогите.
Создать типизированный файл записей,решить задачу используя данный типа запись.


Где тут речь о текстовом файле?
Ты можешь сохранять файл в любом формате,вот пример

var
path:string;
f:file of stud;
begin
....
...
Writeln('Vvedite pyt i imya faila');
readln(path);
assign (f,path);
rewrite(f);
write(f,b.bal);
close(f);
...
...
end.


при вводе пути и имени,укажи допустим,test.txt,и все.

Автор: klem4 3.04.2007 23:48

Цитата
Ты можешь сохранять файл в любом формате,вот пример


Приведенный тобой код работать не будет.

 ! 
7. Проверяйте программы перед тем, как разместить их на форуме!!!
устное замечание