Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
 
0 / 0 / 0
Регистрация: 18.04.2013
Сообщений: 7
1

Внешняя сортировка простым слиянием

15.09.2013, 16:11. Просмотров 342. Ответов 0
Метки нет (Все метки)


Здравствуйте!
Есть текстовый документ с информацией о фильмах. Нужно его отсортировать по году выхода.Помогите пожалуйста исправить программу, не знаю как. Пробую пока для четного числа строк.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
var tmp1,tmp2,a2,a1:string;
    f,f1,f2:text;
    tmp,s,i,j,kol:integer;
    b:boolean;
    
function compare( a1,a2: string):boolean;
var err,err1,x,y,k,l: integer;
    tmps1,tmps2: string;
begin
for k:=1 to length(a1) do
begin
 if a1[k]= '(' then
  begin
   tmps1:=copy(a1,k+1,4);
   Val(tmps1,x,err);
   writeln(x);
  end;
end;
 
for l:=1 to length(a2) do
begin
 if a2[l]= '(' then
  begin
   tmps2:=copy(a2,l+1,4);
   Val(tmps2,y,err1);
   writeln(y);
  end;
end;
 
if x<=y then compare:=true
else compare:=false;
 
end;
 
 
begin
assign(f,'c:\project1\filmsTest.txt');
reset(f);
kol:=0;
 
while not eof(f) do
 begin
  readln(f,a1);
  inc(kol);
 end;
 
close(f);
 
 
reset(f);
Assign(f1,'c:\project1\filmsTestB.txt');
Assign(f2,'c:\project1\filmsTestC.txt');
Rewrite(f1);
Rewrite(f2);
s:=1;
 
while (s<kol) do
begin
 for i:=1 to kol div 2 do
  begin
   readln(f,a1);
   writeln(f1,a1);
  end;
 while not eof(f) do
  begin
   Readln(f,a2);
   Writeln(f2,a2);
  end;
 Close(f);
 Close(f1);
 Close(f2);
 
 Rewrite(f);
 Reset(f1);
 Reset(f2);
 Read(f1,a1);
 Read(f2,a2);
 
while (not eof(f1)) and (not eof(f2)) do
 begin
  i:=0;
  j:=0;
  b:=true;
  while (b) and (not eof(f1)) and (not eof(f2)) do
   begin
    if compare(a1,a2) then
     begin
      writeln(f,a1);
      readln(f1,a1);
      inc(i);
     end
    else
     begin
      writeln(f,a2);
      readln(f2,a2);
      inc(j);
     end;
    if (i=s) or (j=s) then b:=false;
   end;
   if not b then
    begin
     while (i<s) and (not eof(f1)) do
      begin
       writeln(f,a1);
       readln(f1,a1);
       inc(i);
      end;
     while (j<s) and (not eof(f2)) do
      begin
       writeln(f,a2);
       readln(f2,a2);
       inc(j);
      end;
     end;
 end; 
Close(f);
Close(f1);
Close(f2);
s:=s*2;
end;
Erase(f1);
Erase(f2);
end.
Аватар (2009) $2,781,505,847
Титаник (1997) $1,835,300,000
Властелин колец: Возвращение короля (2003) $1,129,219,252
Пираты Карибского моря: Сундук мертвеца (2006) $1,065,896,541
История игрушек 3 (2010) $1,062,984,497
Алиса в стране чудес (2010) $1,023,285,206
Тёмный рыцарь (2008) $1,001,921,825
Гарри Поттер и философский камень (2001) $968,657,891
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.09.2013, 16:11
Ответы с готовыми решениями:

алгоритм внешней сортировки простым слиянием
Дан файл содержащий следующие сведения о пассажирах поезда:фамилия масса багажа.упорядочить...

Использовать внешнюю сортировку простым слиянием
Даны сведения о химических веществах, которые включают в себя: название вещества, молекулярная...

Внешняя сортировка слиянием
народ!!помогите переделать прогу,использующую слияние с использованием оперетивной памяти чтоб...

Внешняя сортировка слиянием
Здравствуйте, помогите с такой задачкой(поиск использовал, там не то): Отсортируйте массив...

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.09.2013, 16:11

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.

Сортировка простым слиянием
Помогите с задачей! Разработать алгоритм методом пошаговой детализации и программу, реализующую...

Сортировка простым слиянием
Разработать алгоритм методом пошаговой детализации и программу, реализующую этот алгоритм ...

Реализуйте сортировку простым слиянием
10.Реализуйте сортировку простым слиянием.

Внешняя сортировка
Помогите написать программу, сортировка массива прямым слиянием, очень нужно:(


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.