0 / 0 / 0
Регистрация: 03.06.2017
Сообщений: 2
1

Число пассажиров, имеющих более 2-х вещей и число тех, у кого количество вещей превосходит среднее число вещей

05.06.2017, 16:47. Показов 1231. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите пожалуйста, находила эту задачу в интернете, но мне нужно сделать так, чтобы программа брала данный из типизированного файла и записывала их в другой. В субботу просидела часов 5 над задачей, так ничего и не поняла.Дан файл багаж, содержащий сведения о багаже нескольких пассажиров, представляют собой запись с двумя полями: одно поле целого типа (количество вещей) и одно – действительное (вес в килограммах).Найти число пассажиров, имеющих более двух вещей и число пассажиров, количество вещей которых превосходит среднее число вещей.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.06.2017, 16:47
Ответы с готовыми решениями:

Найти число пассажиров, имеющих более двух вещей.
Известна информация о багаже (количество вещей и общий вес багажа) 24 пассажиров. а) Найти число...

Структура: Найти число пассажиров, у которых количество вещей превосходит среднее число вещей всех пассажиров.
Program Perviu; type baggade = record kolvesh:integer; ves:real; end; var a:array of...

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

Найти число пассажиров, имеющих более двух вещей
Багаж пассажира характеризуется количеством вещей и общим весом вещей. Дан массив, содержащий...

3
129 / 127 / 107
Регистрация: 09.01.2017
Сообщений: 1,651
05.06.2017, 21:25 2
Только начал, и в 22 строке ошибка: нельзя преобразовать тип integer к Baggage. Прошу помощи =)...
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
type
  Baggage = record
    Count: integer;
    Weight: real;
  end;
 
var
  a: array of Baggage;
  st: string; 
  t: Baggage;
  f: file of Baggage;
 
begin
  
  assign(f, 'Baggage.dat');
  reset(f);  
  
  repeat
    repeat
      writeln('Введите кол-во вещей пассажира: ');
      readln(t.Count);
      write(f, t.Count);
    until t.Count >= 0;    
    repeat
      writeln('Введите вес вещей пассажира: ');
      readln(t.Weight); 
      write(f, t.Weight);
    until t.Weight >= 0;
    writeln('Будете еще вводить данные (Да - Нет)?');
  until st = 'Нет'; 
  
  close(f);
end.
Добавлено через 4 минуты
Исправлено) Но теперь нельзя прочитать данные из файла...
Кликните здесь для просмотра всего текста
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
type
  Baggage = record
    Count: integer;
    Weight: real;
  end;
 
var
  a: array of Baggage;
  st: string; 
  t: Baggage;
  f: file of real;
 
begin
  
  assign(f, 'Baggage.dat');
  reset(f);  
  
  repeat
    repeat
      writeln('Введите кол-во вещей пассажира: ');
      readln(t.Count);
      write(f, t.Count);
    until t.Count >= 0;    
    repeat
      writeln('Введите вес вещей пассажира: ');
      readln(t.Weight); 
      write(f, t.Weight);
    until t.Weight >= 0;
    writeln('Будете еще вводить данные (Да - Нет)?');
    readln(st);
  until st = 'Нет'; 
  close(f);
  assign(f, 'Baggage.dat');
  reset(f); 
  
  read(f,t.Count);
  read(f,t.Weight);
  
  writeln;
  writeln('Работа программы завершена');  
  
end.
1
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
32830 / 21168 / 8147
Регистрация: 22.10.2011
Сообщений: 36,429
Записей в блоге: 8
06.06.2017, 20:23 3
Цитата Сообщение от Zwelenewskiy Посмотреть сообщение
Но теперь нельзя прочитать данные из файла...
Теперь можно:


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
type
  Baggage = record
    Count: integer;
    Weight: real;
  end;
 
var
  // a: array of Baggage; // массив здесь в принципе не нужен
  st: string; 
  t: Baggage;
  f: file of Baggage;
 
begin
  
  assign(f, 'Baggage.dat');
  rewrite(f);  
  
  repeat
    repeat
      writeln('Введите кол-во вещей пассажира: ');
      readln(t.Count);
    until t.Count >= 0;    
    repeat
      writeln('Введите вес вещей пассажира: ');
      readln(t.Weight); 
    until t.Weight >= 0;
    write(f, t); // и только теперь пишем в файл ...
    writeln('Будете еще вводить данные (Да - Нет)?');
    readln(st);
  until st = 'Нет'; 
  reset(f); 
  
  read(f,t);
  writeln(t.Count, ' ', t.Weight);
 
  // ...
  
  writeln;
  writeln('Работа программы завершена');  
  
end.
Продолжай
2
129 / 127 / 107
Регистрация: 09.01.2017
Сообщений: 1,651
06.06.2017, 21:26 4
Daria2705, вот, готово. Извините,что так долго =)
Кликните здесь для просмотра всего текста
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
type
  Baggage = record
    Count: integer;
    Weight: real;
  end;
 
var
  st: string; 
  t: Baggage;
  f: file of Baggage;
  n, k, s, x, y: integer;
  sr: real;
 
BEGIN
  
  assign(f, 'Baggage.dat');
  rewrite(f);  
  
  repeat
    n := n + 1;
    repeat
      write('Введите кол-во вещей пассажира: ');
      readln(t.Count);
      s := s + t.Count;
      k := k + 1;
    until t.Count >= 0;    
    repeat
      write('Введите вес вещей пассажира: ');
      readln(t.Weight); 
    until t.Weight >= 0;
    write(f, t); 
    repeat
      writeln('Будете еще вводить данные (Да - Нет)?');
      readln(st);
    until (st = 'Да') or (st = 'Нет');    
  until st = 'Нет'; 
  
  sr := s / k;
  reset(f); 
  
  for var i := 1 to n do
  begin
    read(f, t);
    if t.Count > 2
      then x := x + 1;
    if t.Count > sr
      then y := y + 1;
  end;
  
  if x <> 0
    then writeln('I:', x)
  else writeln('I: таких пассажиров нет');
  
  if y <> 0
    then writeln('II:', y)
  else writeln('II: таких пассажиров нет');
  
  writeln;
  writeln('Работа программы завершена'); 
  
  close(f);   
END.
1
06.06.2017, 21:26
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.06.2017, 21:26
Помогаю со студенческими работами здесь

Найти число пассажиров, имеющих более двух вещей
Работа над файлами. Условие программы в картике (вложение)...

Найти число пассажиров, имеющих более двух вещей и число пассажиров, количество вещей которых превосходит среднее число вещей
Тема: Записи. Работа с текстовыми файлами. Дан файл f, содержащий сведения о багаже нескольких...

Найти число пассажиров, имеющих более двух вещей
Багаж пассажира характеризуется количеством вещей и общим весом вещей. Сведения о багаже каждого...

Найти число пассажиров, имеющих более двух вещей
Багаж пассажира характеризуется количеством вещей и общим весом вещей. Пусть дан массив, содержащий...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru