Во второй массив записать только данные тех из них, кто взял телевизор - Pascal
Формулировка задачи:
. Дан массив данных о клиентах пункта проката: фамилия, имя, отчество, адрес (улица, дом, квартира) и что взял (только один предмет). Во второй массив записать только данные тех из них, кто взял телевизор.
Решение задачи: «Во второй массив записать только данные тех из них, кто взял телевизор»
textual
Листинг программы
- type
- TName = record
- firstName, lastName, patronymic: String[50];
- end;
- TAddress = record
- street: String[50];
- building: String[4];
- apartment: Word;
- end;
- TClient = record
- name: TName;
- address: TAddress;
- obj: String;
- end;
- TArray = Array[Byte] Of TClient;
- var
- a, b: TArray;
- i, na, nb: Byte;
- searchParam: String;
- begin
- repeat
- Write('Input client'#39's count =');
- ReadLn(na);
- until (na > 0);
- for i := 0 to na - 1 do
- with a[i] do
- begin
- with name do
- begin
- Write(#9'First name: '); ReadLn();
- Write(#9' Last name: '); ReadLn();
- Write(#9'Patronymic: '); ReadLn();
- end;
- with address do
- begin
- Write(#9' Street name: '); ReadLn();
- Write(#9' Building number: '); ReadLn();
- Write(#9'Apartment number: '); ReadLn();
- end;
- Write(#9'Object: '); ReadLn(obj);
- WriteLn('-----');
- end;
- Write('Input search parameter (some object): '); ReadLn(searchParam);
- nb := 0;
- for i := 0 to na - 1 do
- if (a[i].obj = searchParam)
- then
- begin
- b[nb] := a[i];
- Inc(nb);
- end;
- WriteLn('----------');
- for i := 0 to nb - 1 do
- with b[i].name do
- WriteLn(i + 1, '. ', firstName, ' ', lastName, ' ', patronymic);
- end.
Объяснение кода листинга программы
- Объявляются пользовательские типы данных:
TName
- запись с полямиfirstName
,lastName
,patronymic
типа String[50];TAddress
- запись с полямиstreet
типа String[50],building
типа String[4],apartment
типа Word;TClient
- запись с полямиname
типа TName,address
типа TAddress,obj
типа String;TArray
- массив байтов типа TClient, обозначается какa
иb
;
- Объявляются переменные:
a
,b
- массивы типа TClient;i
,na
,nb
- переменные типа Byte;searchParam
- переменная типа String;
- Пользователь вводит количество клиентов в массиве
a
. - Пользователь вводит данные о клиентах, включая имя, адрес и объект.
- Пользователь вводит искомый параметр поиска (например,
телевизор
). - Происходит поиск клиентов, которые взяли тот объект, который соответствует введенному параметру.
- Клиенты, удовлетворяющие поисковому параметру, записываются в массив
b
. - Выводятся данные клиентов, соответствующих поисковому параметру, в формате
Имя Фамилия Отчество
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д