Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/18: Рейтинг темы: голосов - 18, средняя оценка - 4.78
0 / 0 / 0
Регистрация: 06.05.2014
Сообщений: 8

Описать массив записей жильцов дома, отображая информацию о каждом

29.05.2014, 00:12. Показов 3786. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Составьте программу, которая описывает массив записей жильцов дома, отображая в нём следующую информацию о каждом: номер квартиры, фамилия, имя, возраст, для лиц, старше 18 лет в зависимости от рода занятий (учеба, работа, пенсия) — запись места учебы места работы и трудового стажа, для пенсионеров — год выхода на пенсию. Программ должна обеспечивать ввод данных, поиск квартиры с максимальным числом жильцов, поиск самого юного и самого пожилого жильца, поиск студентов, пенсионеров.
не понятно что сделать дальше и как помогите
есть начало проги
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
program LR7;
uses crt;
type L1=record fam,y,u,r: string[50];
               d,k,n,v,c,p:integer;
end;
var L:L1;
    F:file of L1;
    w:string[50];
 begin
clrscr;
  assign(F,'c02-041-1.dan.doc');
  rewrite(F);
while L.fam <> '***' do
   begin
     writeln ('Введите фамилию жильца');
     readln(L.fam);
     writeln ('Введите имя жильца');
     readln(L.u);
     writeln ('Введите номер квартиры');
     readln(L.n);
     writeln ('Введите возраст жильца');
     readln(L.v);    
     writeln ('Введите место учебы студента');
     readln(L.y);
     writeln ('Введите место работы');
     readln(L.r);
     writeln ('Введите трудовой стаж');
     readln(L.c);
     writeln ('Введите год выхода на пенсию');
     readln(L.p); 
    end;
      close(f);
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
29.05.2014, 00:12
Ответы с готовыми решениями:

Расшифровать ребус: "ДОМА+ДОМА+ДОМА+ДОМА+ДОМА=УЛИЦЫ"
Расшифровать ребус, полученный в результате замены одинаковых букв одинаковыми цифрами. Найти...

Создать список жильцов дома. Описать и ввести массив, содержащий 10 записей заданной структуры
Создать список жильцов дома.1.Описать и ввести массив ,содержащий 10 записей следующей...

Расшифровать ребус: "ДОМА+ДОМА+ДОМА+ДОМА=РАЙОН"
Расшифровать ребус, полученный в результате замены одинаковых букв одинаковыми цифрами. Найти...

1
CAPITAL OF ROCK!
 Аватар для JokeR.BY
1281 / 708 / 982
Регистрация: 03.03.2010
Сообщений: 2,286
29.05.2014, 04:18
с записью / чтением как-нибудь уж сами уточню только, что незаполненные поля желательно бы тоже заполнять при выводе в файл. каким-нибудь фиктивным значением. это, конечно, если вам нужно потом читать этот файл.

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
uses
  Crt;
 
type
  zhylec = record
    fam : string[20]; //фамилия
    im : string[10]; //имя
    kvart : Byte; //номер квартиры
    vozr : Byte; //возраст [18..22] - студент, [23..60] - рабочий
    rab_uch : string; //место учёбы / работы
    stazh : Byte; //стаж
    pens : Word; //год выхода на пенсию
  end;
  AR = array of zhylec; //массив жильцов
  
var
  mass : AR;
  i, n : Byte; //количество жильцов
 
procedure FindPens(mass : AR);
var
  i : Byte;
begin
  WriteLn('Список пенсионеров :');
  for i := 0 to Length(mass)-1 do
    {как вариант - if (mass[i].pens <> 0)}
    if (mass[i].vozr > 60) then
      Write(#9, mass[i].fam, ' ', mass[i].im);
  WriteLn;
end;
 
procedure FindStudent(mass : AR);
var
  i : Byte;
begin
  WriteLn('Список студентов :');
  for i := 0 to Length(mass)-1 do
    {как вариант критерия статуса студента можно предложить if ((mass[i].rab_uch <> '') and (mass[i].stazh = 0))}
    if (mass[i].vozr in [18..22]) then
      Write(#9, mass[i].fam, ' ', mass[i].im);
  WriteLn;
end;
 
procedure MaxZhylcy(mass : AR); //функция немного топорная, но лень лепить семиэтажные циклы.
var
  i, idMax, max : Byte;
  kvar : array[1..255] of Byte;
 
begin
  for i := 0 to Length(mass)-1 do
    Inc(kvar[mass[i].kvart]);
  max := kvar[1]; idMax := 1;
  for i := 2 to 255 do
    if (max < kvar[i]) then
    begin
      max := kvar[i];
      idMax := i;
    end;
  WriteLn('В ', idMax, ' квартире проживает наибольшее количество жильцов (', max, ').');
end;
 
procedure MinMaxVozr(mass : AR);
var
  i, max, maxID, min, minID : Byte;
begin
  max := mass[0].vozr; maxID := 0;
  min := mass[0].vozr; minID := 0;
  for i := 1 to length(mass)-1 do
  begin
    if (max < mass[i].vozr) then
    begin
      max := mass[i].vozr;
      maxID := i;
    end;
    if (min > mass[i].vozr) then
    begin
      min := mass[i].vozr;
      minID := i;
    end;
  end;
  WriteLn('самый молодой :', mass[minID].fam, ' ', mass[minID].im);
  WriteLn('самый пожилой :', mass[maxID].fam, ' ', mass[maxID].im);
end;
  
begin
  ClrScr;
  Write('Введите количество жильцов :'); ReadLn(n);
  SetLength(mass, n); Dec(n);
  for i := 0 to n do
  begin
    ClrScr;
    Write('Фамилия жильца :'); ReadLn(mass[i].fam);
    Write('Имя жильца :'); ReadLn(mass[i].im);
    Write('Номер квартиры :'); ReadLn(mass[i].kvart);
    Write('Возраст :'); ReadLn(mass[i].vozr);
    //для красоты if'ы можно на элегантный switch..case заменить
    if (mass[i].vozr in [23..60]) then
    begin
      Write('Место работы :'); ReadLn(mass[i].rab_uch);
      Write('Рабочий стаж :'); ReadLn(mass[i].stazh);
    end
    else
      if (mass[i].vozr in [18..22]) then
      begin
        Write('Место учёбы :'); ReadLn(mass[i].rab_uch);
      end
      else
        if (mass[i].vozr > 60) then
        begin
          Write('Год выхода на пенсию :'); ReadLn(mass[i].pens);
        end;
  end;
  MinMaxVozr(mass);
  MaxZhylcy(mass);
  FindStudent(mass);
  FindPens(mass);
end.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
29.05.2014, 04:18
Помогаю со студенческими работами здесь

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

Создать файл, описывающий жильцов дома
Создать файл, описывающий жильцов дома, отображая в нем следующую информацию о каждом: номер...

Создать файл, описывающий жильцов дома
Создать файл, описывающий жильцов дома, отображая в нем следующую информацию о каждом: номер...

Создать файл, описывающий жильцов дома,
Создать файл, описывающий жильцов дома, отображая в нем следующую информацию о каждом: номер...

В первый файл записать информацию о жильцах дома, во второй - информацию о квартирах
Здравствуйте! Помогите пожалуйста. найти ошибку в программе! Необходимо написать два файла, в...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru