Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 24.02.2020
Сообщений: 5

Нужно исправить ошибки

03.06.2020, 22:54. Показов 1026. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вот само задание Суть в том что я вроде сделал но ошибки в коде и не могу понять и исправить
кто может помочь и кинуть уже исправленную программу ?

Структура элемента массива пассажир: фамилия, имя, отчество, номер рейса, количество багажных мест, общий вес. Определить:
─ рейс с максимальным весом багажа;
─ пассажира с наибольшим количеством вещей;
─ вывести список пассажиров, улетающих заданным рейсом, и информацию об их багаже
─ удалить запись по заданной фамилии пассажира

ВОТ САМ КОД что я написал


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
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
program Passajiri;
uses crt;
Begin
 writeln('Сформировать массив, каждый элемент которого имеет следующую структуру:');
 write('пассажир=фамилия:string;');
    type passajir= record
     fam:string[10];
     im:string[8];
     otchestvo:string[10];
     nom_reys:integer;
     kol_bag:integer;
     obshiy_ves:integer;
         KDP:integer;
     end;
      var i,k,n:integer;
    f:file of passajir;
    a:passajir; q:char;
 
procedure vvod;
        Begin
            clrscr;
            assign (f,'d:\passajir.dat');
            rewrite(f);
            repeat
            textcolor(11);
            writeln('|Введите данные пасажира:  ');
        with a do
        begin
        textcolor(12);
        write('|Введите фамилию ............................|'); readln(fam);
        write('|Введите имя .................................|'); readln(im);
        write('|Введите отчество ............................|'); readln(otchestvo);
        write('|Введите номер рейса ........................|'); readln(nom_reys);
        write('|Введите Количество багажных мест ...........|'); readln(kol_bag);
        write('|Введите общий вес багажа*....................|'); readln(obshiy_ves);
        end;
    write(f,a);
    textcolor(14);
                   writeln('  ');
    write('Для продолжения Ввода данных нежмите ENTER, Для завершения нажмите - 0:',' ',q);
                   readln(q);
                until q='0';
            close(f);
        end;
Procedure vyvod;
        Begin
            assign (f,'D:\passajir.dat');
            reset(f);
            clrscr;
            textcolor(10);
            writeln('________________________________________________________________________________');
            textcolor(11);
            writeln('| Фамилия |  Имя  | Отчество | Номер рейса* | Кол.баг.мест | Общий вес |');
            textcolor(10);
            writeln('________________________________________________________________________________');
            for i:=1 to filesize(f) do
        begin
            textcolor(10);
            read(f,a);
            writeln('|',a.fam:9,'|',a.im:7,'|',a.otchestvo:10,'|',a.nom_reys:13,'|',a.kol_bag:16,'|',a.obshiy_ves:11,'|');
            textcolor(10);
            writeln('________________________________________________________________________________');
        end;
           close(f);
           textcolor(14);
           writeln('Нажмите ENTER для выхода из просмотра файла...*');
           readln;
        end;
Procedure dobavit;
        begin
    clrscr;
    assign (f,'D:\passajir.dat');
    reset(f);
    seek(f,filesize(f));
        repeat 
        textcolor(11);
        writeln('Введите данные багажа*¦*');
with a do
begin
textcolor(12);
write('Введите фамилию ............................|'); readln(fam);
write('Введите имя ................................|'); readln(im);
write('Введите отчество ...........................|'); readln(otchestvo);
write('Введите номер рейса ........................|'); readln(nom_reys);
write('Введите колочество багажных мест ...........|'); readln(kol_bag);
write('Введите общий вес ..........................|'); readln(obshiy_ves);
end;
write(f,a);
textcolor(14);
writeln('  ');
write('Для продолжения Ввода данных нажмите ENTER, Для завершения  - 0:',' ',q);
readln(q);
  until q='0';
        close(f);
        end;
Procedure udalenie;
          var w:byte;
          begin
             begin
             assign (f,'C:\tempest\pasajir.txt');
             reset(f);
             clrscr;
             textcolor(11);
             writeln('________________________________________________________________________________');
             textcolor(10);
             writeln('| Фамилия  |  Имя  | Отчество | Номер рейса* | Кол.баг.мест | Общий вес |');
             textcolor(11);
             writeln('________________________________________________________________________________');
     for i:=1 to filesize(f) do
            Begin
            textcolor(10);
            read(f,a);
            writeln('|',a.fam:9,'|',a.im:7,'|',a.otchestvo:10,'|',a.nom_reys:13,'|',a.kol_bag:16,'|',a.obshiy_ves:12,'|');
            textcolor(11);
            writeln('________________________________________________________________________________');
            end;
           end;
               assign (f,'d:\passajir.dat');
               reset(f);
               textcolor(14);
               write('Ввести номер записи для удаления - ');
               readln(w);
               seek(f, filesize(f) - 1);
               read(f, a);
               seek(f, w - 1);
               write(f, a);
               seek(f, filesize(f) - 1);
               truncate(f);
               close(f);
          begin
               assign (f,'d:\passajir.dat');
               reset(f);
               clrscr;
            textcolor(11);
    writeln('________________________________________________________________________________');
    textcolor(10);
    writeln('| Фамилия  |  Имя  | Отчество | Номер рейса* | Кол.баг.мест | Общий вес |');
    textcolor(11);
    writeln('________________________________________________________________________________');
    for i:=1 to filesize(f) do
    begin
            textcolor(10);
            read(f,a);
            writeln('|',a.fam:9,'|',a.im:7,'|',a.otchestvo:10,'|',a.nom_reys:13,'|',a.kol_bag:16,'|',a.obshiy_ves:11,'|');
            textcolor(11);
            writeln('________________________________________________________________________________');
        end;
      close(f);
     textcolor(14);
    writeln('                        ');
    writeln('Нажмите  ENTER для выхода...*');
    readkey;
    end;
        end;
Procedure zapros1;
        var bag:string;
            max:word;
        begin
            assign (f,'d:\passajir.dat');
            reset(f);
        clrscr;
        max:=0;
        bag:='';
        textcolor(11);
        writeln('________________________________________________________________________________');
        textcolor(10);
        writeln('| Фамилия | Максимальное кол-во багажа* | Номер рейса* |');
                      textcolor(11);
        writeln('________________________________________________________________________________');
        for i:=1 to filesize(f) do
        begin
            read(f,a);
        if (a.kol_bag>max) then
        begin
        max:=a.kol_bag; bag:=a.fam
        end;
        end;
textcolor(10);
writeln('|',bag:9,'|'    ,max:28,    '|',a.nom_reys:13,'|');
textcolor(11);
writeln('________________________________________________________________________________');
close(f);
textcolor(14);
writeln('                                             ');
writeln('Нажмите ENTER для выхода из содержимого файла...*');
readkey;
end;
procedure zapros2;
         var tax:integer;
        begin
        clrscr;
        assign(f,'d:\passajir.dat');
    reset(f);
    textcolor(11);
    write('Введите количество багажных мест - '); readln(tax);
     textcolor(11);
        writeln('________________________________________________________________________________');
        textcolor(10);
        writeln('|  Имя  | Фамилия | Кол.баг.мест | Общий вес |');
                       textcolor(11);
        writeln('________________________________________________________________________________');
     for i:=1 to filesize(f) do
    begin
        read(f,a);
        if (tax = a.kol_bag) then
    begin
        textcolor(10);
        writeln('|',a.im:7,'|',a.fam:8,'|',a.kol_bag:16,'|',a.obshiy_ves:11,'|');
        textcolor(11);
        writeln('________________________________________________________________________________');
        end;
        end;
        close(f);
        textcolor(14);
        writeln('                                           ');
       writeln('Нажмите ENTER для выхода из просмотра файла...*');
readln;
end;
Procedure zapros3;
        var ul1:integer;
        begin
        clrscr;
        assign(f,'d:\passajir.dat');
    reset(f);
    textcolor(12);
    write('Введите номер рейса - '); readln(ul1);
 
     textcolor(11);
        writeln('________________________________________________________________________________');
        textcolor(10);
        writeln('| Фамилия | Имя | Кло.баг.мест | Общий вес |');
                       textcolor(11);
        writeln('________________________________________________________________________________');
     for i:=1 to filesize(f) do
    begin
        read(f,a);
        if (ul1 = a.nom_reys) then
    begin
        textcolor(10);
        writeln('|',a.fam:9,'|',a.im:7,'|',a.kol_bag:16,'|',a.obshiy_ves:11,'|');
        textcolor(11);
        writeln('________________________________________________________________________________');
        end;
        end;
        close(f);
        textcolor(14);
        writeln('                                           ');
writeln('Нажмите ENTER для выхода из просмотра файла...*');
readln;
end;
    begin
        repeat 
             clrscr;
             textcolor(10);
             writeln('________________________________________________________________________________');
             textcolor(14);
             writeln('                                 Главное Меню программы             ');
         textcolor(10);
             writeln('________________________________________________________________________________');
         textcolor(11);
             writeln('1 - Создать файл                       ');
             writeln('   ');
         textcolor(11);
             writeln('2 - Ввывод даных на экран            ');
             writeln('   ');
         textcolor(11);
             writeln('3 - Добавить данные                    ');
             writeln('   ');
         textcolor(11);
             writeln('4 - Удалить записи                   ');
             writeln('   ');
         textcolor(11);
             writeln('5 - Рейс с максимальным весом         ');
             writeln('   ');
         textcolor(11);
             writeln('6 - Рейс с наибольшим кол-во багажа ');
             writeln('   ');
         textcolor(11);
             writeln('7 - Пассажиры улетающие заданым рейсом ');
             writeln('   ');
         textcolor(11);
             writeln('8 - Выход ');
         textcolor(10);
             writeln('________________________________________________________________________________');
         textcolor(7);
         write  ('Ваш выбор: '); readln(n);
         case n of
             1: vvod;
             2: vyvod;
             3: Dobavit;
             4: udalenie;
             5: zapros1;
             6: zapros2;
             7: zapros3;
             8: begin
              textcolor(10);
             writeln(' ');
         write  ('Нажмите ENTER для выхода из программы!!!');
             readln;
         exit;
         end;
             else
             begin
             textcolor(12);
             writeln('Нажмите ENTER и продолжите ваш выбор...');
             readln end;
              end
        until n=8;
    end.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
03.06.2020, 22:54
Ответы с готовыми решениями:

Нужно исправить ошибки
помогите пожалуйста исправить ошибки type Graph = array of integer; var i,j,k,n,q: integer; w,z,a: graph; begin ...

Нужно отладить программу, есть ошибки не могу их понять и исправить
Не могу запустить сортировки... не хотят вызываться... также не могу вывести их что бы они пошагово отображали вид сотрировки по...

Нужно исправить ошибки в программе
Program poezdka; Uses CRt; Label m1; Var Gor: string; {Naimenovanie gorode} S,V,T: real; {S-rastoyanie, V-skorost,...

3
 Аватар для mr-Crocodile
3053 / 1672 / 657
Регистрация: 19.03.2019
Сообщений: 5,381
04.06.2020, 10:26
чуть-чуть подправил, чтобы компилировалось и запускалось. Логику работы не проверял.

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
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
program Passajiri;
 
uses crt;
 
type
  passajir = record
    fam: string[10];
    im: string[8];
    otchestvo: string[10];
    nom_reys: integer;
    kol_bag: integer;
    obshiy_ves: integer;
    KDP: integer;
  end;
 
var
  i, k, n: integer;
  f: file of passajir;
  a: passajir;
  q: char;
 
procedure vvod;
begin
  clrscr;
  assign(f, 'd:\passajir.dat');
  rewrite(f);
  repeat
    textcolor(11);
    writeln('|Введите данные пасажира:  ');
    with a do
    begin
      textcolor(12);
      write('|Введите фамилию ............................|'); readln(fam);
      write('|Введите имя .................................|'); readln(im);
      write('|Введите отчество ............................|'); readln(otchestvo);
      write('|Введите номер рейса ........................|'); readln(nom_reys);
      write('|Введите Количество багажных мест ...........|'); readln(kol_bag);
      write('|Введите общий вес багажа*....................|'); readln(obshiy_ves);
    end;
    write(f, a);
    textcolor(14);
    writeln('  ');
    write('Для продолжения Ввода данных нежмите ENTER, Для завершения нажмите - 0:', ' ', q);
    readln(q);
  until q = '0';
  close(f);
end;
 
procedure vyvod;
var
  i: integer;
begin
  assign(f, 'D:\passajir.dat');
  reset(f);
  clrscr;
  textcolor(10);
  writeln('________________________________________________________________________________');
  textcolor(11);
  writeln('| Фамилия |  Имя  | Отчество | Номер рейса* | Кол.баг.мест | Общий вес |');
  textcolor(10);
  writeln('________________________________________________________________________________');
  for i := 1 to filesize(f) do
  begin
    textcolor(10);
    read(f, a);
    writeln('|', a.fam:9, '|', a.im:7, '|', a.otchestvo:10, '|', a.nom_reys:13, '|', a.kol_bag:16, '|', a.obshiy_ves:11, '|');
    textcolor(10);
    writeln('________________________________________________________________________________');
  end;
  close(f);
  textcolor(14);
  writeln('Нажмите ENTER для выхода из просмотра файла...*');
  readln;
end;
 
procedure dobavit;
begin
  clrscr;
  assign(f, 'D:\passajir.dat');
  reset(f);
  seek(f, filesize(f));
  repeat
    textcolor(11);
    writeln('Введите данные багажа*¦*');
    with a do
    begin
      textcolor(12);
      write('Введите фамилию ............................|'); readln(fam);
      write('Введите имя ................................|'); readln(im);
      write('Введите отчество ...........................|'); readln(otchestvo);
      write('Введите номер рейса ........................|'); readln(nom_reys);
      write('Введите колочество багажных мест ...........|'); readln(kol_bag);
      write('Введите общий вес ..........................|'); readln(obshiy_ves);
    end;
    write(f, a);
    textcolor(14);
    writeln('  ');
    write('Для продолжения Ввода данных нажмите ENTER, Для завершения  - 0:', ' ', q);
    readln(q);
  until q = '0';
  close(f);
end;
 
procedure udalenie;
var
  w, i: integer;
begin
  begin
    assign(f, 'C:\tempest\pasajir.txt');
    reset(f);
    clrscr;
    textcolor(11);
    writeln('________________________________________________________________________________');
    textcolor(10);
    writeln('| Фамилия  |  Имя  | Отчество | Номер рейса* | Кол.баг.мест | Общий вес |');
    textcolor(11);
    writeln('________________________________________________________________________________');
    for i := 1 to filesize(f) do
    begin
      textcolor(10);
      read(f, a);
      writeln('|', a.fam:9, '|', a.im:7, '|', a.otchestvo:10, '|', a.nom_reys:13, '|', a.kol_bag:16, '|', a.obshiy_ves:12, '|');
      textcolor(11);
      writeln('________________________________________________________________________________');
    end;
  end;
  assign(f, 'd:\passajir.dat');
  reset(f);
  textcolor(14);
  write('Ввести номер записи для удаления - ');
  readln(w);
  seek(f, filesize(f) - 1);
  read(f, a);
  seek(f, w - 1);
  write(f, a);
  seek(f, filesize(f) - 1);
  truncate(f);
  close(f);
  begin
    assign(f, 'd:\passajir.dat');
    reset(f);
    clrscr;
    textcolor(11);
    writeln('________________________________________________________________________________');
    textcolor(10);
    writeln('| Фамилия  |  Имя  | Отчество | Номер рейса* | Кол.баг.мест | Общий вес |');
    textcolor(11);
    writeln('________________________________________________________________________________');
    for i := 1 to filesize(f) do
    begin
      textcolor(10);
      read(f, a);
      writeln('|', a.fam:9, '|', a.im:7, '|', a.otchestvo:10, '|', a.nom_reys:13, '|', a.kol_bag:16, '|', a.obshiy_ves:11, '|');
      textcolor(11);
      writeln('________________________________________________________________________________');
    end;
    close(f);
    textcolor(14);
    writeln('                        ');
    writeln('Нажмите  ENTER для выхода...*');
    readkey;
  end;
end;
 
procedure zapros1;
var
  i: integer;
var
  bag: string;
  max: integer;
begin
  assign(f, 'd:\passajir.dat');
  reset(f);
  clrscr;
  max := 0;
  bag := '';
  textcolor(11);
  writeln('________________________________________________________________________________');
  textcolor(10);
  writeln('| Фамилия | Максимальное кол-во багажа* | Номер рейса* |');
  textcolor(11);
  writeln('________________________________________________________________________________');
  for i := 1 to filesize(f) do
  begin
    read(f, a);
    if (a.kol_bag > max) then
    begin
      max := a.kol_bag; bag := a.fam
    end;
  end;
  textcolor(10);
  writeln('|', bag:9, '|', max:28, '|', a.nom_reys:13, '|');
  textcolor(11);
  writeln('________________________________________________________________________________');
  close(f);
  textcolor(14);
  writeln('                                             ');
  writeln('Нажмите ENTER для выхода из содержимого файла...*');
  readkey;
end;
 
procedure zapros2;
var
  i, tax: integer;
begin
  clrscr;
  assign(f, 'd:\passajir.dat');
  reset(f);
  textcolor(11);
  write('Введите количество багажных мест - '); readln(tax);
  textcolor(11);
  writeln('________________________________________________________________________________');
  textcolor(10);
  writeln('|  Имя  | Фамилия | Кол.баг.мест | Общий вес |');
  textcolor(11);
  writeln('________________________________________________________________________________');
  for i := 1 to filesize(f) do
  begin
    read(f, a);
    if (tax = a.kol_bag) then
    begin
      textcolor(10);
      writeln('|', a.im:7, '|', a.fam:8, '|', a.kol_bag:16, '|', a.obshiy_ves:11, '|');
      textcolor(11);
      writeln('________________________________________________________________________________');
    end;
  end;
  close(f);
  textcolor(14);
  writeln('                                           ');
  writeln('Нажмите ENTER для выхода из просмотра файла...*');
  readln;
end;
 
procedure zapros3;
var
  i, ul1: integer;
begin
  clrscr;
  assign(f, 'd:\passajir.dat');
  reset(f);
  textcolor(12);
  write('Введите номер рейса - '); readln(ul1);
  
  textcolor(11);
  writeln('________________________________________________________________________________');
  textcolor(10);
  writeln('| Фамилия | Имя | Кло.баг.мест | Общий вес |');
  textcolor(11);
  writeln('________________________________________________________________________________');
  for i := 1 to filesize(f) do
  begin
    read(f, a);
    if (ul1 = a.nom_reys) then
    begin
      textcolor(10);
      writeln('|', a.fam:9, '|', a.im:7, '|', a.kol_bag:16, '|', a.obshiy_ves:11, '|');
      textcolor(11);
      writeln('________________________________________________________________________________');
    end;
  end;
  close(f);
  textcolor(14);
  writeln('                                           ');
  writeln('Нажмите ENTER для выхода из просмотра файла...*');
  readln;
end;
 
begin
  //writeln('Сформировать массив, каждый элемент которого имеет следующую структуру:');
  //write('пассажир=фамилия:string;');
    repeat
      TextBackGround(Black);
      clrscr;
      textcolor(10);
      writeln('________________________________________________________________________________');
      textcolor(14);
      writeln('                                 Главное Меню программы             ');
      textcolor(10);
      writeln('________________________________________________________________________________');
      textcolor(11);
      writeln('1 - Создать файл                       ');
      writeln('   ');
      textcolor(11);
      writeln('2 - Вывод даных на экран            ');
      writeln('   ');
      textcolor(11);
      writeln('3 - Добавить данные                    ');
      writeln('   ');
      textcolor(11);
      writeln('4 - Удалить записи                   ');
      writeln('   ');
      textcolor(11);
      writeln('5 - Рейс с максимальным весом         ');
      writeln('   ');
      textcolor(11);
      writeln('6 - Рейс с наибольшим кол-во багажа ');
      writeln('   ');
      textcolor(11);
      writeln('7 - Пассажиры улетающие заданым рейсом ');
      writeln('   ');
      textcolor(11);
      writeln('8 - Выход ');
      textcolor(10);
      writeln('________________________________________________________________________________');
      textcolor(7);
      write('Ваш выбор: '); readln(n);
      case n of
        1: vvod;
        2: vyvod;
        3: Dobavit;
        4: udalenie;
        5: zapros1;
        6: zapros2;
        7: zapros3;
        8:
          begin
            textcolor(10);
            writeln(' ');
            write('Нажмите ENTER для выхода из программы!!!');
            readln;
            exit;
          end;
      else
        begin
          textcolor(12);
          writeln('Нажмите ENTER и продолжите ваш выбор...');
          readln end;
      end
    until n = 8;
end.
1
2374 / 776 / 561
Регистрация: 15.01.2019
Сообщений: 2,394
04.06.2020, 10:27
Лучший ответ Сообщение было отмечено Shalirus как решение

Решение

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
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
program Zadanie216project1;
 
uses
  crt;
const
  filename = 'passajir.dat';
 
type
  Tpassajir = record
          fam: string[12];  { Фамилия пассажира}
           im: string[12];  { Имя пассажира}
    otchestvo: string[12];  { Отчество пассажира}
     nom_reys: integer;     { Номер рейса}
      kol_bag: integer;     { Количество багажа}
   obshiy_ves: integer;     { Общий вес }
       end;
var
  i,k,n: integer;
  f: file of Tpassajir;
  a: Tpassajir;
  q: char;
 
procedure vvod;
begin
  clrscr;
  assign(f,filename);
  rewrite(f);
  repeat
    clrscr;
    textcolor(11);
    writeln('|Введите данные пасcажира: ');
    with a do
      begin
        textcolor(12);
        write('|Введите фамилию ..................|');
        readln(fam);
        write('|Введите имя ......................|');
        readln(im);
        write('|Введите отчество .................|');
        readln(otchestvo);
        write('|Введите номер рейса ..............|');
        readln(nom_reys);
        write('|Введите Количество багажных мест .|');
        readln(kol_bag);
        write('|Введите общий вес багажа*.........|') ;
        readln(obshiy_ves);
      end;
    write(f,a);
    textcolor(14);
    writeln(' ');
    write('Для продолжения Ввода данных нажмите клавишу "ENTER". Для завершения введите цифру 0.');
    readln(q);
  until q = '0';
  close(f);
end;
 
 
Procedure vyvod;
begin
  assign (f,filename);
  reset(f);
  clrscr;
  textcolor(10);
  writeln('________________________________________________________________________________' );
  textcolor(11);
  writeln('|     Фамилия    |      Имя       |    Отчество    |  № р.  |  баг.  |   Вес  |');
  textcolor(10);
  writeln('________________________________________________________________________________' );
  for i:= 1 to filesize(f) do
    begin
      textcolor(10);
      read(f,a);
      writeln('|',a.fam:15,' |',a.im:15 ,' |',a.otchestvo:15,' |',a.nom_reys:7,' |',a.kol_bag:7,' |',a .obshiy_ves:7,' |');
      textcolor(10);
    end;
  writeln('________________________________________________________________________________' );
  close(f);
  textcolor(14);
  writeln('Нажмите ENTER для выхода из просмотра файла...*');
  readln;
end;
 
 
procedure dobavit;
begin
  clrscr;
  assign (f,filename);
  reset(f);
  seek(f,filesize(f));
  repeat
    clrscr;
    textcolor(11);
    writeln('|Введите данные пасажира: ');
    with a do
      begin
        textcolor(12);
        write('Введите фамилию ..................|' );
        readln(fam);
        write('Введите имя ......................|');
        readln(im);
        write('Введите отчество .................|') ;
        readln(otchestvo);
        write('Введите номер рейса ..............|');
        readln(nom_reys);
        write('Введите колочество багажных мест .|');
        readln(kol_bag);
        write('Введите общий вес ................|');
        readln(obshiy_ves);
      end;
    write(f,a);
    textcolor(14);
    writeln(' ');
    write('Для продолжения ввода данных нажмите клавишу "ENTER". Для завершения введите цифру 0.');
    readln(q);
  until q = '0';
  close(f);
end;
 
 
procedure udalenie;
var
  temp: array of Tpassajir;
  w,h: integer;
begin
  assign (f,filename);
  reset(f);
  clrscr;
  textcolor(11);
  writeln('________________________________________________________________________________' );
  textcolor(10);
  writeln('|     Фамилия    |      Имя       |    Отчество    |  № р.  |  баг.  |   Вес  |');
  textcolor(11);
  writeln('________________________________________________________________________________' );
  SetLength(temp,filesize(f));
  for i:= 0 to filesize(f)-1 do
    begin
      textcolor(10);
      read(f,a);
      temp[i]:= a;
      writeln('|',a.fam:15,' |',a.im:15 ,' |',a.otchestvo:15,' |',a.nom_reys:7,' |',a.kol_bag:7,' |',a .obshiy_ves:7,' |');
    end;
  textcolor(11);
  writeln('________________________________________________________________________________' );
 
  textcolor(14);
  write('Ввести номер записи для удаления - ');
  repeat
    Readln(w); { Ввод значения количества строк}
    w:= w - 1;
    if (w < 0) or (w > filesize(f)-1) then   { Условие для проверки вхождения числа в диапазон}
      writeln('Ошибка ввода! Повторите попытку.')
    else
      break;             { Цикл остановится, когда число будет входить в заданный диапазон значений}
  until false;
 
  h:= high(temp);
  for i:= w to h-1 do
    temp[i]:= temp[i+1];
  SetLength(temp,h);
  rewrite(f);
  for i:= 0 to high(temp) do
    write(f,temp[i]);
  reset(f);
  clrscr;
  textcolor(11);
  writeln('______________________________________________________________________________' );
  textcolor(10);
  writeln('|     Фамилия    |      Имя       |    Отчество    |  № р.  |  баг.  |   Вес  |');
  textcolor(11);
  writeln('______________________________________________________________________________' );
  for i:=1 to filesize(f) do
    begin
      textcolor(10);
      read(f,a);
      writeln('|',a.fam:15,' |',a.im:15 ,' |',a.otchestvo:15,' |',a.nom_reys:7,' |',a.kol_bag:7,' |',a .obshiy_ves:7,' |');
    end;
  textcolor(11);
  writeln('______________________________________________________________________________' );
  close(f);
  textcolor(14);
  writeln(' ');
  writeln('Нажмите клавишу "ENTER" для выхода...');
  readkey;
end;
 
 
procedure zapros1;
var
  fammax: string;
  immax: string;
  reysmax: integer;
  max: word;
begin
  assign (f,filename);
  reset(f);
  clrscr;
  max:= 0;
  textcolor(11);
  writeln('________________________________________________________________________________' );
  textcolor(10);
  writeln('|    Фамилия     |      Имя       | Макс. общ. вес | Номер рейса |');
  textcolor(11);
  writeln('________________________________________________________________________________' );
  for i:= 1 to filesize(f) do
    begin
      read(f,a);
      if (a.obshiy_ves > max) then
        begin
          max:= a.obshiy_ves;
          fammax:= a.fam;
          immax:= a.im;
          reysmax:= a.nom_reys;
        end;
    end;
  textcolor(10);
  writeln('|',fammax:15,' |',immax:15,' |' ,max:15, ' |',reysmax:12,' |');
  textcolor(11);
  writeln('________________________________________________________________________________' );
  close(f);
  textcolor(14);
  writeln(' ');
  writeln('Нажмите клавишу "ENTER" для выхода из содержимого файла...');
  readkey;
end;
 
 
procedure zapros2;
var
  fammax: string;
  immax: string;
  reysmax: integer;
  max: word;
begin
  clrscr;
  assign(f,filename);
  reset(f);
  max:= 0;
  textcolor(11);
  writeln('________________________________________________________________________________' );
  textcolor(10);
  writeln('|   Фамилия      |      Имя       | Кол.баг.мест | Номер рейса |');
  textcolor(11);
  writeln('________________________________________________________________________________' );
  for i:= 1 to filesize(f) do
    begin
      read(f,a);
      if (a.kol_bag > max) then
        begin
          max:= a.kol_bag;
          fammax:= a.fam;
          immax:= a.im;
          reysmax:= a.nom_reys;
        end;
    end;
  textcolor(10);
  writeln('|',fammax:15,' |',immax:15 ,' |',max:13,' |',reysmax:12,' |');
  textcolor(11);
  writeln('________________________________________________________________________________' );
  close(f);
  textcolor(14);
  writeln(' ');
  writeln('Нажмите клавишу "ENTER" для выхода из просмотра файла...');
  readln;
end;
 
 
procedure zapros3;
var
  ul1:integer;
begin
  clrscr;
  assign(f,filename);
  reset(f);
  textcolor(12);
  write('Введите номер рейса - ');
  readln(ul1);
  textcolor(11);
  writeln('________________________________________________________________' );
  textcolor(10);
  writeln('|     Фамилия    |       Имя      | Кол. баг. мест | Общий вес |');
  textcolor(11);
  writeln('________________________________________________________________' );
  for i:= 1 to filesize(f) do
    begin
      read(f,a);
      if (ul1 = a.nom_reys) then
        begin
          textcolor(10);
          writeln('|',a.fam:15,' |',a.im:15 ,' |',a.kol_bag:15,' |',a.obshiy_ves:10,' |');
        end;
    end;
  textcolor(11);
  writeln('________________________________________________________________' );
  close(f);
  textcolor(14);
  writeln(' ');
  writeln('Нажмите клавишу "ENTER" для выхода из просмотра файла...');
  readln;
end;
 
 
begin
  repeat
    clrscr;
    textcolor(10);
    writeln('___________________________________________________________________' );
    textcolor(14);
    writeln(' Главное Меню программы ');
    textcolor(10);
    writeln('___________________________________________________________________' );
    textcolor(11);
    writeln('1 - Создать файл ');
    writeln(' ');
    textcolor(11);
    writeln('2 - Вывод данных на экран ');
    writeln(' ');
    textcolor(11);
    writeln('3 - Добавить данные ');
    writeln(' ');
    textcolor(11);
    writeln('4 - Удалить записи ');
    writeln(' ');
    textcolor(11);
    writeln('5 - Рейс с максимальным весом ');
    writeln(' ');
    textcolor(11);
    writeln('6 - Рейс с наибольшим кол-во багажа ');
    writeln(' ');
    textcolor(11);
    writeln('7 - Пассажиры улетающие заданым рейсом ');
    writeln(' ');
    textcolor(11);
    writeln('8 - Выход ');
    textcolor(10);
    writeln('___________________________________________________________________' );
    textcolor(7);
    write ('Ваш выбор: ');
    readln(n);
    case n of
    1: vvod;
    2: vyvod;
    3: Dobavit;
    4: udalenie;
    5: zapros1;
    6: zapros2;
    7: zapros3;
    8: begin
         textcolor(10);
         writeln(' ');
         write ('Нажмите ENTER для выхода из программы!!!');
         readln;
         exit;
       end;
     else
       begin
         textcolor(12);
         writeln('Нажмите ENTER и продолжите ваш выбор...');
         readln
       end;
    end
  until n = 8;
end.
1
0 / 0 / 0
Регистрация: 24.02.2020
Сообщений: 5
04.06.2020, 11:19  [ТС]
спасибо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
04.06.2020, 11:19
Помогаю со студенческими работами здесь

Нужно исправить ошибки в программе
Program Min_el; Const N=9; var a: array of real; {massiv celihj} min: Integer; {nomer minimalnogo elementa massiwa} ...

Нужно исправить ошибки в тексте программы.
Нужно исправить ошибки в тексте программы. program 1; var T:Real; S=6 BEGIN Sum:T+S; WriteLn (Sum); ReadLn

Нужно составить любую программу и исправить ошибки
... Begin Write(' '); readln(n); if(n&gt;99)and (n&lt;1000) then Begin a:=n mod 10 b:=n div 10 if b=a then; write('число ...

Нужно исправить ошибки в программе гадания на ромашке
programm ROMASKA uses CRT; var k:string; begin CLSSCR; WritLn(' GODANIE NA ROMASKE &lt;&lt;LOVE - NOT LOVE&gt;&gt;); WriteLn; ...

Нужно найти и исправить ошибки в программе по выводу дружественных чисел
Эта программа должна выводить дружественные числа в заданном интервале(в данном случае до 100000),но я криворукий, так что она не работает....


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru