4.2 Приклади завдання та розв’язок задач обробки одновимірних масивів
4. 2 Приклади завдання та розв’язок задач обробки одновимірних масивів
Розглянемо типові алгоритми обробки масивів у вигляді програм на VBA.
Приклад 4. 2. 1 Задано массив A(n). Знайти середнє арифметичне елементів масиву, які не перевищують задане число m.
Для наданої задачі розглянемо декілька способів рішення.
Спосіб 1 Додаємо до проекту модуль за ім. ’ям “Приклад1_1”. Для відображення початкових значень, значень розрахунків використовуємо вбудовані вікна вводу InputBox , виводу MsgBox . Приклади цих вікон в процесі роботи наведені на рис. 4. 1 та рис. 4. 2.
Рисунок 4. 1 - Вікна введення
Рисунок 4. 2 - Результати роботи програми
Код програми. Private Sub Prim1() Dim i As Integer, n As Integer, m As Single, sum As Single Dim sa As Single, k As Integer, pov As String Dim a() As Single n = InputBox(" Ввести кількість елементів n=", " Вікно вводу _ початкових даних" ) ReDim a(n) m = InputBox(" Ввести число для умови m=", " Вікно вводу _ значень умов" ) sum = 0: k = 0 For i = 1 To n a(i) =InputBox(" Ввести à (" & i & " )=", " Вікно введення _ елементів масиву" ) If a(i) < m Then sum = sum + a(i) k = k + 1 End If Next i If k = 0 Then pov = " таких елементів немає" Else sa = sum / k pov = " середнє арифметичне елементів < " & m & " =" & CStr(sa) End If MsgBox pov, , " вікно результатів" End Sub
Спосіб 2 Для організації введення даних і виведення результатів створимо форму, в якій розмістимо такі елементи керування: · написи Label1, Label2, Label3, Label4 , у яких властивості Caption змінені на тексти, що зазначені на рис. 4. 3. Крім того, у написів змінена властивість Font - шрифт, його розмір - 10, і жирність – Bold ; · текстові поля TextBox1, TextBox2, TextBox3 - для введення початкової інформації. У цих об’єктів також змінена властивість Font;
· текстове поле TextBox4 розташоване під написом „Відповідь”, призначене для виведення результату. Змінена властивість Font, властивості MultiLine = True , WordWrap=True, щоб виводити в полі текст у декілька рядків; · командна кнопка CommandButton1 , з якою зв’язується процедура рішення задачі. Змінена властивість Caption на текст, що зазначений на кнопці, властивості Font: розмір, жирність. На рис. 4. 3 наведена форма в процесі роботи, де введені числа в текстові поля для кількості елементів, числове значення для умови, натиснута командна кнопка „Обчислення”, відображені результати розрахунків.
Рисунок 4. 3 - Форма в процесі роботи
Код програми:
Спосіб 3 Для відображення початкових значень та значень розрахунків використовуємо “Лист1” Excel . Елементи масиву розміщуються у першому стовпці, починаючи з четвертого рядка. Значення кількості елементів у клітині В1 , значення m – у клітині В2 . Розмістимо командну кнопку CommanButton1 на цьому листі, як показано на рис. 4. 4. Встановимо значення для властивості Caption – „Обчислення”, для Font: - „Начертание” значення - „жирный” , „Размер” – 14. Вивести відповідне повідомлення про результати обчислень у клітині С7 .
Рисунок 4. 4 - Інтерфейс Лист1 Код програми:
Результати роботи програми показано на рис. 4. 5.
Рисунок 4. 5 - Результати роботи програми Приклад 4. 2. 2 Заданий масив цілих чисел A(n) . За бажанням користувача знайти або найбільший елемент масиву та його номер, або кількість кратних числу 5 елементів масиву. Варіант розрахунку вибирається користувачем за допомогою перемикачів (OptionButton).
Введемо змінну max , в яку будемо записувати найбільший з переглянутих на цю мить елементів масиву, змінну mp – для збереження номера цього елемента. Через k позначимо лічильник кратних числу 5 елементів. Спочатку вважаємо, що максимальний елемент, тобто max , дорівнює (-105), що не повинно перевищувати елементи масиву A(n).
Розглянемо два способи рішення задачі.
Спосіб 1 Добавимо форму до проекту. Інтерфейс задачі даний на рис. 4. 6. Змінимо властивості Caption, WordWrap для елементів OptionButton1, OptionButton2, CommandButton1, Label1, Label2, Label3 на відповідні тексти. Для текстового вікна (TextBox1), в якому буде відображатись масив A(n) змінюємо властивості MultiLine, Scrollbars.
Рисунок 4. 6 - Форма до задачі 2 для способу 1
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|