Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.03.2009, 06:32   #1
Pumus
 
Регистрация: 20.03.2009
Сообщений: 3
По умолчанию Типизированный файл, сортировка по убыванию.

Собственно, прошу помочь. Вот задание: Задан типизированный файл F, все компоненты которого – целые числа (4-хбайтные беззнаковые). Переписать в текстовый файл G компоненты файла F, упорядоченные по убыванию. Желательно не использовать массив, но в принципе, можно.
Собственно так как я никогда не встречался с работой с типизированными файлами, дальше чем
Код:
Program inverse;
Uses crt;
var f,g:integer;

Begin
clrscr;
assign(f,'D:\F.txt');
reset(f);
assign(g,'D:\G.txt');
rewrite(g);
j:=1;
while not eof(f) do
      begin

      end;

end.
у меня не дошло. Собственно, просьба помочь т_Т
Собственнл вот ещё пара мыслей:
4х байтное беззнаковое - скорее всего, нужно использовать unsigned longint.
Вот написанный мной же алгоритм сортировки:
Код:
Program ubiv;
Uses crt;
const n=10;
Var st:array[1..n] of integer;
    i,j,t,l:integer;

begin
clrscr;
i:=1;
repeat
st[i]:=random(100);
i:=i+1;
until i=10;
i:=1;
repeat
write(st[i],' ');
i:=i+1;
until i=10;
writeln('');
 for i:=1 to n-1 do
 for j:=i+1 to n do
   if (st[j]>st[i]) then
     begin
     t:=st[i];
     st[i]:=st[j];
     st[j]:=t;
     end;
for i:=1 to n-1 do
begin
write(st[i],' ');
end;
readln;
end.

Последний раз редактировалось Pumus; 20.03.2009 в 06:35.
Pumus вне форума Ответить с цитированием
Старый 20.03.2009, 08:10   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Так сортирнул ты вродь пузырьково. Гуд.
Вот запись в файл:
Код:
var f:file of integer;
begin
 assign(f,'file');rewrite(f);
for i:=1 to n do write(f,s[i]);
close(f);
end.
Хотя я б тебе посоветовал так:
Делаеш тип:
Код:
const n=5;
type massiv=array[1..n] of longint;
var s:massiv; f:file of massiv;
begin
 {Вводим и сортируем s по старинке}
........
 {открываем файл-пишем все сразу-закрываем файл}
  assign(f,'file');rewrite(f);write(f,s);close(f);

end.
Так удобнее
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 20.03.2009, 10:28   #3
Pumus
 
Регистрация: 20.03.2009
Сообщений: 3
По умолчанию

Ых... Что-то не получается собрать. Можешь пожалуйста помочь сделать это все цельным куском? ж)
Pumus вне форума Ответить с цитированием
Старый 20.03.2009, 11:08   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Что значит не получается?
Var к Var кидай
А то что в begin end кидай в конец проги перед последним end.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 20.03.2009, 12:27   #5
Pumus
 
Регистрация: 20.03.2009
Сообщений: 3
По умолчанию

Все, вроде разобрался и вроде даже работает ж)
Спасибо за помощь .)
Pumus вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сортировка по убыванию по неиндексированным полям Udaf_Alex БД в Delphi 3 17.03.2008 08:42
Сортировка TAdoTable по убыванию mm_mauser БД в Delphi 8 05.12.2007 12:37
Сортировка по убыванию Костя БД в Delphi 3 20.11.2007 08:37
1. Сортировка Шелла по убыванию 2. Сортировка вставками по убыванию Arkuz Помощь студентам 1 25.09.2007 17:16