![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
-Екатерина- |
![]()
Сообщение
#1
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 82 Пол: Женский Репутация: ![]() ![]() ![]() |
У меня есть типизированный файл с записями
И я хочу отсортировать записи по ключевому признаку (табельному номеру) Z - динамически массив только из таб номеров t:=filesize(f2); getmem(Z,t*sizeof(integer)); k:=0; while not (eof(f2)) do begin read(f2,zap); inc(k); Z^[k]:=zap.tn; end; close(f2); for j:=1 to k-1 do for i:=1 to k-j do if z^[i]>z^[i+1] then begin а дальше не знаю: как переставлять записи в файле??? только не пользуйтесь пожалуйста прямым доступом!! |
![]() ![]() |
Гость |
![]()
Сообщение
#2
|
Гость ![]() |
хм....а как??
я так сделала for j:=1 to k-1 do for i:=1 to k-j do if z^[i].tn>z^[i+1].tn then begin c:=z^[i]; z^[i]:=z^[i+1]; z^[i+1]:=c; end; rewrite(f2); i:=1; while not (eof(f2)) do begin read(Z^[i]); write(f2,z^[i]); inc(i); end; |
![]() ![]() |
![]() |
Текстовая версия | 20.07.2025 6:50 |