Описан тип:
N – константа, определяемая в каждой программе.
Решение каждой из следующих задач описывается функцией, возвращающей вещественное число, с двумя параметрами. Функция использует только один массив типа t_arr, причем этот массив имеет минимальный необходимый размер.
Задача № 1. Требуется определить суммарный подоходный налог всех рабочих завода (p% от зарплаты каждого рабочего), если известна заработная плата каждого из 9000 рабочих, которая хранится в массиве a.
Задача № 2. Из зарплаты каждого из 15 сотрудников отдела, которая хранится в массиве а, вычли p% в пользу пострадавших от стихийного бедствия. Требуется определить, какую зарплату получит каждый сотрудник и какая сумма будет собрана.
Задача № 3. Вводится температура каждого из 366 дней високосного года, начиная 1 января и кончая 31 декабря. Требуется определить среднюю температуру каждого месяца, максимальную из средних температур и номер месяца (p) с максимальной средней температурой.
Установите соответствие между задачами 1, 2, 3 и наиболее подходящими заголовками функций, предназначенных для их решения.
N – константа, определяемая в каждой программе.
Решение каждой из следующих задач описывается функцией, возвращающей вещественное число, с двумя параметрами. Функция использует только один массив типа t_arr, причем этот массив имеет минимальный необходимый размер.
Задача № 1. Требуется определить суммарный подоходный налог всех рабочих завода (p% от зарплаты каждого рабочего), если известна заработная плата каждого из 9000 рабочих, которая хранится в массиве a.
Задача № 2. Из зарплаты каждого из 15 сотрудников отдела, которая хранится в массиве а, вычли p% в пользу пострадавших от стихийного бедствия. Требуется определить, какую зарплату получит каждый сотрудник и какая сумма будет собрана.
Задача № 3. Вводится температура каждого из 366 дней високосного года, начиная 1 января и кончая 31 декабря. Требуется определить среднюю температуру каждого месяца, максимальную из средних температур и номер месяца (p) с максимальной средней температурой.
Установите соответствие между задачами 1, 2, 3 и наиболее подходящими заголовками функций, предназначенных для их решения.
- ✓
- ✓
- ✓
В задаче № 1 массив а (зарплата рабочих) – входной параметр, поэтому он может передаваться и как параметр-значение, и как параметр-константа. Но так как размер массива a (N = 9000) достаточно велик, предпочтительно передавать его как параметр-константу. Параметр p – входной параметр, параметр-значение. Передавать его как параметр-константу нецелесообразно, так как он не требует большого объема памяти. Функция возвращает суммарный подоходный налог.
В задаче № 2 массив а (зарплата сотрудников) является как входным, так и выходным параметром. Следовательно, он должен передаваться по ссылке как параметр-переменная. Параметр p – входной параметр, параметр-значение. Функция возвращает собранную сумму.
В задаче № 3 определяется средняя температура каждого месяца и сохраняется в выходном параметре а. Выходному параметру p присваивается номер месяца с максимальной средней температурой. Функция возвращает среднюю температуру месяца с номером p.
Входной параметр, который является целым числом, нецелесообразно передавать как параметр-константу.
Поэтому решение задач 1–3 может быть описано функциями с заголовками:
задача № 1 – function f(const a: t_arr; p: integer): real;
задача № 2 – function f(var a: t_arr; p: integer): real;
задача № 3 – function f(var a: t_arr; var p: integer): real;
В задаче № 2 массив а (зарплата сотрудников) является как входным, так и выходным параметром. Следовательно, он должен передаваться по ссылке как параметр-переменная. Параметр p – входной параметр, параметр-значение. Функция возвращает собранную сумму.
В задаче № 3 определяется средняя температура каждого месяца и сохраняется в выходном параметре а. Выходному параметру p присваивается номер месяца с максимальной средней температурой. Функция возвращает среднюю температуру месяца с номером p.
Входной параметр, который является целым числом, нецелесообразно передавать как параметр-константу.
Поэтому решение задач 1–3 может быть описано функциями с заголовками:
задача № 1 – function f(const a: t_arr; p: integer): real;
задача № 2 – function f(var a: t_arr; p: integer): real;
задача № 3 – function f(var a: t_arr; var p: integer): real;