Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Для заданного массива чисел X и некоторой величины h определить, сколько элементов массива больше h. Для решения этой задачи необходимо разработать функцию.⇐ ПредыдущаяСтр 15 из 15
Для выполнения задания выполните следующие действия: 1. Поместить в окно кода модуля заготовку создаваемой функции. Выполнить команду Insert (Вставить), Procedure (Процедура). В появившемся окне Add Procedure (Добавить процедуру) установить переключатель типа процедуры в положение Function (Функция) и ввести имя функции Fun Pr 1. 2. Ввести код функции Fun Pr 1: Public Function FunPr 1 (X As Variant,h As Variant) As Integer Dim kol As Integer, i As Integer, j As Integer 2 n= X.Rows.Count 3 m= X.Columns.Count 4: kol = 0 5: For i = 1 To n 6: For j = 1 To m 7: If X(i, j) > h Then 8: kol = kol + 1 End If Next Next 1 2 : FunPr1 = kol End Function Обратить внимание: при объявлении аргументов функции Fun Pr 1 в качестве массива выступает диапазон, поэтому при объявлении соответствующего аргумента (X) он объявляется не как имя массива, а имеет тип Variant. В строке 2 значение выражения X.Rows.Count равно числу строк диапазона X. Значение выражения X.Columns.Count в строке 3 равно числу столбцов диапазона X. 3. Cвернуть окно редактора Visual Basic. В открывшемся окне Microsoft Excel Массивы.xls протестировать созданную функцию 4. Продемонстрируйте результат преподавателю. 5. Выполнить задание следующего содержания:
Пусть задан массив чисел X и некоторая величина h. Значения всех элементов этого массива, которые меньше h, требуется заменить нулем. Для решения этой задачи необходимо разработать функцию Fun Pr 2. 6. В окне модуля Module1 создать функция аналогично функции FunPr1. 7. Ввести код этой функции: Public Function FunPr2(X As Variant, h As Variant) As Variant Dim i As Integer, j As Integer Dim R() As Variant 3 n= X.Rows.Count 4 m= X.Columns.Count ReDim R(1 To n,1 To m)As Variant 6: For i = 1 To n 7: For j = 1 m 8: If X(i, j) < h Then 9: R(i, j) = 0 Else 11: R(i, j) = X(i, j) End If Next Next 15: FunPr2 = R End Function Смысл инструкций программы функции Fun Pr 2 достаточно прозрачен и не требует дополнительного комментария. Следует лишь обратить внимание на строку 15, в которой функция принимает значение не скаляра, а массива. 8. Свернуть окно редактора Visual Basic. 9. Провести тестирование 10. Продемонстрировать преподавателю результаты выполненной работы. 11. Выполнить индивидуальное задание в соответствии с номером своего Варианты индивидуальных заданий
Вопросы для самоподготовки 1. Дайте понятие массива данных. 2. Как задаются элементы массива? Приведите примеры массивов. 3. Как можно объявить массив? 4. Какой тип переменных должен быть задан для элементов массива при работе с ячейками таблицы? 5. Как можно задать одномерный массив? 6. Опишите объект Range. 7. Какие виды форматов могут использоваться при адресации ячеек? Опишите эти форматы. 8. Для каких целей используется метод Offset ? 9. Как создать функцию с использованием команды главного меню VBA? 10. Какое свойство используется для подсчета элементов семейства? ЛИТЕРАТУРА
1. Гарнаев А.Ю. Microsoft Excel 2002: Разработка приложений /А.Ю.Гарнаев. – СПб.: БХВ-Петербург, 2003. – 768с. 2. Гарнаев А.Ю. Microsoft Excel 2000: Разработка приложений /А.Ю.Гарнаев. – СПб.: БХВ-Петербург, 2000 – 576с. 3. Кнут Дональд Э. Искусство программирования. Основные алгоритмы: пер. с англ. / Дональд Э.Кнут. – М. : Издательский дом «Вильямс», 2000. – 720с. 4. Хальворсон Микаэл. Microsoft Visual Basic 6.0 для профессионалов. Шаг за шагом. Практ.пособие: пер. с англ. / Микаэл Хальворсон. – М.: Изд-во ЭКОМ, 2000.–720с. 5. Глушков С.В. Программирование в среде Windows: учебный курс / С.В.Глушков, В.В. Мельников, Сурядный А.С. – М.:Изд-во АСТ, 2000. – 487с. 6. Матросов А.В. MS Office XP: разработка приложений / А.В. Матросов – СПб.: БХВ , 2003. – 944с.
© Чубина Т.В. |
Последнее изменение этой страницы: 2019-04-19; Просмотров: 276; Нарушение авторского права страницы