Задание. В двумерном массиве B, состоящем из N строк и M столбцов,
находятся размеры начисленной заработной платы N работников предприятия за
M месяцев, т. е. B[ I, K ] – это заработная плата работника предприятия с
номером I за месяц с номером K.
Составить программу, позволяющую выполнить:
ввести с клавиатуры количество работников и количество месяцев, а также
размеры заработной платы, для ввода исходных размеров заработной платы
использовать подпрограмму-процедуру;
определить наименьшую заработную плату за месяц с номером 1;
Исходные данные:
N – количество работников предприятия (целое число);
M – количество месяцев (целое число);
B[ I, K ] (I = 1, 2, 3,…, N; K = 1, 2, 3,…, M) – массив значений заработной
платы (значения вещественного типа);
Требуется определить:
MIN – наименьшую заработную плату за месяц с номером 1 (число с
дробной частью);
Формализация задачи
Значения заработной платы представляют собой конечный набор (N´M
значений) однотипных данных. Для их хранения можно использовать двумерный
массив В, состоящий из N строк и M столбцов ( B [ 1, 1 ] – заработная плата
работника номер 1 за первый месяц, B [ 1, 2 ] – заработная плата работника
номер 1 за второй месяц, B [ 2, 1 ] – заработная плата работника номер 2 за
первый месяц и т.д.
Абстрагируясь от физического смысла значений элементов массива,
сформулируем задачу обработки абстрактного двумерного массива B.

Алиналабвдк Алиналабвдк    1   13.05.2020 10:24    28

Ответы
AlinaLove200413 AlinaLove200413  27.12.2023 11:17
Добрый день! С удовольствием помогу вам решить данную задачу.

Для начала, предлагаю описать подпрограмму-процедуру для ввода исходных данных с клавиатуры:

```
Процедура ВводРазмеровЗарплаты(Var B: array of array of real; Var N, M: integer)

Начало
Вывести("Введите количество работников:")
Ввод(N)

Вывести("Введите количество месяцев:")
Ввод(M)

Вывести("Введите размеры заработной платы:")
Для i = 1 до N Шаг 1 Выполнить
Для j = 1 до M Шаг 1 Выполнить
Вывести("Введите заработную плату работника ", i, " за месяц ", j, ":")
Ввод(B[i, j])
Конец Для
Конец Для

Конец Процедуры
```

Теперь перейдем к основной части программы, где необходимо решить задачу определения наименьшей заработной платы за месяц с номером 1:

```
Алгоритм ОпределениеНаименьшейЗарплаты(Var B: array of array of real; N, M: integer; Var MIN: real)

Начало
MIN := B[1, 1] // Присваиваем начальное значение минимальной заработной платы

Для i = 1 до N Шаг 1 Выполнить
Если B[i, 1] < MIN Тогда
MIN := B[i, 1] // Обновляем значение минимальной заработной платы
Конец Если
Конец Для

Вывести("Наименьшая заработная плата за месяц 1: ", MIN)

Конец Алгоритма
```

Теперь можем объединить эти две подпрограммы в основной код:

```
ОсновнаяПрограмма()
Начало
Переменные
N, M: integer // Количество работников и месяцев
B: array of array of real // Двумерный массив с размерами зарплаты
MIN: real // Минимальная заработная плата за месяц 1

ВводРазмеровЗарплаты(B, N, M) // Ввод исходных размеров зарплаты

ОпределениеНаименьшейЗарплаты(B, N, M, MIN) // Определение минимальной заработной платы за месяц 1

Конец ОсновнойПрограммы
```

Таким образом, данная программа позволяет пользователю ввести количество работников и месяцев, а также размеры заработной платы для каждого работника за каждый месяц. Затем программа находит наименьшую заработную плату за месяц с номером 1 и выводит результат.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика