Поиск работника с наибольшим количеством времени работы в ресторане
Информатика

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

Напишите программу на языке Pascal для поиска работника, который работает наибольшее количество времени в известном ресторане, где трудятся n сотрудников.
Верные ответы (1):
  • Янгол
    Янгол
    37
    Показать ответ
    Суть вопроса: Поиск работника с наибольшим количеством времени работы в ресторане

    Объяснение: Для решения этой задачи на языке Pascal нам потребуется использовать массивы для хранения данных о сотрудниках и времени их работы. Мы создадим массив с записями о каждом сотруднике, включающим их имя и количество времени, отработанного в ресторане.

    Сначала мы объявим структуру записи, которая будет содержать поля для имени сотрудника и количества времени работы. Затем, мы создадим массив из таких записей размерности n, где n - количество сотрудников.

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

    Наконец, мы выведем имя сотрудника с наибольшим количеством времени работы.

    Например:

    pascal
    program Поиск_работника;

    type
    Работник = record
    Имя: string;
    ВремяРаботы: integer;
    end;

    var
    Сотрудники: array of Работник;
    i, n, МаксВремя: integer;
    РаботникСМаксВременем: string;

    begin
    write("Введите количество сотрудников: ");
    readln(n);

    setLength(Сотрудники, n);

    for i := 0 to n-1 do
    begin
    write("Введите имя сотрудника ", i+1, ": ");
    readln(Сотрудники[i].Имя);
    write("Введите количество времени работы сотрудника в минутах: ");
    readln(Сотрудники[i].ВремяРаботы);
    writeln();
    end;

    МаксВремя := 0;

    for i := 0 to n-1 do
    begin
    if Сотрудники[i].ВремяРаботы > МаксВремя then
    begin
    МаксВремя := Сотрудники[i].ВремяРаботы;
    РаботникСМаксВременем := Сотрудники[i].Имя;
    end;
    end;

    writeln("Сотрудник с наибольшим количеством времени работы: ", РаботникСМаксВременем);

    end.


    Совет: При написании подобных программ всегда важно следить за корректным вводом данных. Убедитесь, что пользователь вводит числа там, где ожидается число, и правильно разбивает ввод по строкам.

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