Во второй массив записать только данные тех из них, кто взял телевизор - 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.

Объяснение кода листинга программы

  1. Объявляются пользовательские типы данных:
    • 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;
  2. Объявляются переменные:
    • a, b - массивы типа TClient;
    • i, na, nb - переменные типа Byte;
    • searchParam - переменная типа String;
  3. Пользователь вводит количество клиентов в массиве a.
  4. Пользователь вводит данные о клиентах, включая имя, адрес и объект.
  5. Пользователь вводит искомый параметр поиска (например, телевизор).
  6. Происходит поиск клиентов, которые взяли тот объект, который соответствует введенному параметру.
  7. Клиенты, удовлетворяющие поисковому параметру, записываются в массив b.
  8. Выводятся данные клиентов, соответствующих поисковому параметру, в формате Имя Фамилия Отчество.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 3.833 из 5
Похожие ответы