§ 17. Массивы и структуры как параметры функций
17.2. Массивы как параметры функций
Пример 17.5. Даны натуральные n, m целые a0,..., an – 1, b0,..., am – 1, получить: «math style=¨font-family:Arial¨ xmlns=¨http://www.w3.org/1998/Math/MathML¨»«mstyle mathsize=¨16px¨»«mrow»«mi»t«/mi»«mo»§#160;«/mo»«mo»=«/mo»«mo»§#160;«/mo»«mfenced open=¨{¨ close=¨¨»«mtable columnalign=¨left¨»«mtr»«mtd»«mo»(«/mo»«mi»min«/mi»«mo»§#160;«/mo»«msup»«mrow»«mo»(«/mo»«mi»a«/mi»«sub»«mn»0«/mn»«/sub»«mo»§#160;«/mo»«mo».«/mo»«mo».«/mo»«mo».«/mo»«mo»§#160;«/mo»«mi»a«/mi»«sub»«mrow»«mi»n«/mi»«mo»§#160;«/mo»«mo»-«/mo»«mn»1«/mn»«/mrow»«/sub»«mo»)«/mo»«mo»)«/mo»«/mrow»«mn»2«/mn»«/msup»«mo»,«/mo»«mo»§#160;«/mo»«mo»§#160;«/mo»«mi»§#1077;§#1089;§#1083;§#1080;«/mi»«mo»§#160;«/mo»«mo»§#160;«/mo»«mrow»«mo»(«/mo»«mi»min«/mi»«mo»§#160;«/mo»«mrow»«mo»(«/mo»«mi»b«/mi»«sub»«mrow»«mn»0«/mn»«/mrow»«/sub»«mo»§#160;«/mo»«mo».«/mo»«mo».«/mo»«mo».«/mo»«mo»§#160;«/mo»«mi»b«/mi»«sub»«mrow»«mi»m«/mi»«mo»§#160;«/mo»«mo»-«/mo»«mn»1«/mn»«/mrow»«/sub»«mo»)«/mo»«/mrow»«mo»§#160;«/mo»«mo»§#60;«/mo»«mo»§#160;«/mo»«mo»-«/mo»«mn»10«/mn»«/mrow»«/mtd»«/mtr»«mtr»«mtd»«mo»(«/mo»«mi»max«/mi»«mo»§#160;«/mo»«msup»«mrow»«mo»(«/mo»«msub»«mi»a«/mi»«mn»0«/mn»«/msub»«mo»§#160;«/mo»«mo».«/mo»«mo».«/mo»«mo».«/mo»«mo»§#160;«/mo»«msub»«mi»a«/mi»«mrow»«mi»n«/mi»«mo»§#160;«/mo»«mo»-«/mo»«mn»1«/mn»«/mrow»«/msub»«mo»)«/mo»«mo»)«/mo»«/mrow»«mn»2«/mn»«/msup»«mo»,«/mo»«mo»§#160;«/mo»«mo»§#160;«/mo»«mi»§#1077;§#1089;§#1083;§#1080;«/mi»«mo»§#160;«/mo»«mo»§#160;«/mo»«mrow»«mo»(«/mo»«mi»max«/mi»«mo»§#160;«/mo»«mrow»«mo»(«/mo»«msub»«mi»b«/mi»«mn»0«/mn»«/msub»«mo»§#160;«/mo»«mo».«/mo»«mo».«/mo»«mo».«/mo»«mo»§#160;«/mo»«msub»«mi»b«/mi»«mrow»«mi»m«/mi»«mo»§#160;«/mo»«mo»-«/mo»«mn»1«/mn»«/mrow»«/msub»«mo»)«/mo»«/mrow»«mo»§#160;«/mo»«mo»§#62;«/mo»«mo»§#160;«/mo»«mn»10«/mn»«/mrow»«/mtd»«/mtr»«mtr»«mtd»«mo»(«/mo»«mi»max«/mi»«mo»§#160;«/mo»«mrow»«mo»(«/mo»«msub»«mi»a«/mi»«mn»0«/mn»«/msub»«mo»§#160;«/mo»«mo».«/mo»«mo».«/mo»«mo».«/mo»«mo»§#160;«/mo»«msub»«mi»a«/mi»«mrow»«mi»n«/mi»«mo»§#160;«/mo»«mo»-«/mo»«mn»1«/mn»«/mrow»«/msub»«mo»)«/mo»«/mrow»«mo»§#160;«/mo»«mo»*«/mo»«mo»§#160;«/mo»«mi»min«/mi»«mrow»«mo»§#160;«/mo»«mrow»«mo»(«/mo»«msub»«mi»a«/mi»«mn»0«/mn»«/msub»«mo»§#160;«/mo»«mo».«/mo»«mo».«/mo»«mo».«/mo»«mo»§#160;«/mo»«msub»«mi»a«/mi»«mrow»«mi»n«/mi»«mo»§#160;«/mo»«mo»-«/mo»«mn»1«/mn»«/mrow»«/msub»«mo»)«/mo»«/mrow»«mo»§#160;«/mo»«mi mathvariant=¨normal¨»§#1074;«/mi»«mo»§#160;«/mo»«mi»§#1086;§#1089;§#1090;§#1072;§#1083;§#1100;§#1085;§#1099;§#1093;«/mi»«mo»§#160;«/mo»«mi»§#1089;§#1083;§#1091;§#1095;§#1072;§#1103;§#1093;«/mi»«/mrow»«/mtd»«/mtr»«/mtable»«/mfenced»«/mrow»«/mstyle»«/math» Этапы выполнения задания I. Исходные данные: переменные n и m — количество элементов в массивах а и b, a и b — линейныe массивы. II. Результат: значение переменной t. III. Алгоритм решения задачи. 1. Ввод исходных данных. Для ввода массива создадим функцию. Поскольку до вызова функции размер вектора неизвестен, то векторы a и b создаются без указания количества элементов в них. Для ввода значений можно использовать один из двух вариантов: 1.1. Ввести количество элементов, изменить размер вектора с помощью функции resize (см. Приложение к главе 1), затем ввести элементы. 2. Для нахождения минимального и максимального элементов массива оформим соответствующие функции. Функция будет принимать массив как параметр и возвращать значение минимального (максимального) элемента в массиве. |
Пример 17.5. V. Программа:
VI. Тестирование. |