IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Сортировка типизированного файла
сообщение
Сообщение #1





Группа: Пользователи
Сообщений: 1
Пол: Мужской
Реальное имя: Valeriy

Репутация: -  0  +


Подскажите как сделать такую вещь. У меня есть типизированный файл, где содержится информация о книгах: Название книги, автор, год издания, кол-во страниц. Приведите пожалуйста код или программу, которая реализует считывание данных из этого файла и их сортировку в алфавитном порядке по авторам и запишет уже отсортированные строки в текстовой файл.
С меня огромное спасибо rolleyes.gif

Вот программа которая создает этот типизированный файл:

program prog; {начало пограммы}

type
book = record {создаем тип записей book}
name:string[20];
autor:string[20];
god:integer;
str:integer;
end;
bk=file of book; {создаем переменную файлового типа}
var i:byte; {Объявляем переменные}
f:bk;
books:book;
q:char;
begin
assign(f,'C:\pas\book.dat'); {связываем файл book.dat с файловой переменной f}
rewrite(f); {открываем файл для записи}
i:=0;
repeat
inc(i);
with books do begin {ссылаемся на переменную books и заносим данные в оперативную память}
write('Nazvanie ',i,' knigi:');readln(name);
write('Autor:');readln(autor);
write('God:');readln(god);
write('Str:');readln(str);
end;
write(f,books); {записываем данные в файл}
writeln('Prodolzhat ?'); {запрос на продолжение(по условию продолжать нужно 10 раз)}
readln(q); {считываем переменную q}
until (q<>'Y' )and(q<>'y'); {заканчиваем, если q не равно Y или y}
close(f); {закрываем файл f}
end. {конец программы}
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 20.04.2024 11:56
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name