Dim max, p, r, s As Integer

Варианты заданий

Таблица 1

Задание
В одномерном массиве С(17) найти произведение (PR) элементов с четными индексами.
Найти максимальный положительный элемент массива А и определить его индекс.
Найти среднее арифметическое максимального и минимального элементов массива А.
Найти среднее арифметическое отрицательных элементов массива А.
Найти минимальный положительный элемент массива А и определить его индекс.
Определить число положительных элементов массива А и их индексы.
Написать программу определения: каких элементов больше в массиве А – положительных или отрицательных?
Найти сумму квадратов и квадрат суммы элементов массива А.
Найти среднее арифметическое положительных элементов массива А с четными индексами.
Найти максимальный отрицательный элемент массива А и определить его индекс.
Найти среднее арифметическое отрицательных элементов массива А с нечетными индексами.
В одномерном массиве А(10) найти разность между максимальным (max) и минимальным (min) элементами и произведение (pr_pol) положительных элементов.
В одномерном массиве А(15) найти среднее арифметическое положительных элементов (SR) и произведение отрицательных элементов (pr_otr).
В одномерном массиве А(30) найти среднее арифметическое абсолютных значений отрицательных элементов с нечетными номерами (SR).
В одномерном массиве С(17) найти количество (kol) элементов, равных 5.
В одномерном массиве Z(15) найти сумму (S) и произведение (PR) элементов, которые больше 0 и меньше 21.
В одномерном массиве С(17) найти количество (kol) элементов с нечетными индексами, которые меньше последнего элемента.
В одномерном массиве Z(15) найти сумму (S) и среднее арифметическое (SR) элементов, которые больше 0 и меньше 15.
В одномерном массиве С(17) найти количество (kol) элементов с четными индексами, которые больше последнего элемента.
В одномерном массиве В(10) найти среднее арифметическое положительных элементов массива.

Пример выполнения варианта 20

Формула для нахождения среднего арифметического имеет вид

SR = S / N

где S – сумма элементов массива

N – количество элементов массива

Исходные данные и результаты представлены на рабочем листе «Среднее арифметическое» рабочей книги Excel (рис. 1).

Dim max, p, r, s As Integer - student2.ru

Рис. 1. Исходные данные и результаты решения

Текст программы:

Sub pol()

Const n = 10 ‘количество элементов массива

Dim B(1 To n) As Integer

Dim S, SR, kol As Single

‘ Оператор делает активным лист “Среднее арифметическое” рабочей

‘ книги Excel

Sheets("Среднее арифметическое").Activate

‘ Ввод элементов массива с рабочего листа Excel

For I = 1 To n

B(I) = Cells(3, I + 1)

NextI

S = 0 ‘ начальное значение суммы

kol = 0 ‘ количество положительных элементов

For I = 1 To n

If B(I) > 0 Then

S = S + B(I)

kol = kol + 1

End If

Next I

If kol = 0 Then

MsgBox(“Положительных элементов НЕТ”)

Else

SR = S / kol

Cells(5, 1) = “SR”

Cells(5, 2) = SR

End If

End Sub

Задание 2. создать программу обработки одномерного массива, состоящего из 10 элементов. Ввод массива осуществить с помощью процедуры InputBox, варианты обработки выбрать с помощью элемента управления CheckBox. Варианты задания приведены в табл. 2.

Таблица 2

Задание
В массиве С(5) вычислить по выбору: среднее арифметическое всех элементов, среднее геометрическое всех элементов, среднее гармоническое всех элементов.
Для массива С(5) вычислить нормы по формулам: max-норма Dim max, p, r, s As Integer - student2.ru , l-норма Dim max, p, r, s As Integer - student2.ru , евклидова норма Dim max, p, r, s As Integer - student2.ru .
В массиве А(10) вычислить по выбору: количество элементов, превышающих среднее арифметическое всех элементов, сумму элементов, значения которых попадают в диапазон от 5 до 10, второй по величине минимальный элемент.
В целочисленном массиве В(5) вычислить по выбору: сумму квадратов чётных элементов, среднее арифметическое элементов, расположенных до максимального элемента массива, произведение элементов, кратных 3.
Для выборки из 10 элементов найти по выбору оценки математического ожидания, исправленной выборочной дисперсии, справленного среднеквадратического отклонения.
Ввести данные о количестве осадков (в мм) за каждый месяц 2011 года. Найти по выбору: среднее количество осадков за год, самый дождливый (снежный месяц года, самый засушливый месяц весны.
В массиве А(10) вычислить по выбору: разность между отрицательными и положительными элементами, среднее арифметическое максимального и минимального элемента, количество отрицательных элементов.
В целочисленном массиве А(10) вычислить по выбору: число элементов, кратное 5, среднее арифметическое элементов с индексами от 5 до 8 включительно, сумму элементов до первого отрицательного.
Ввести целочисленный массив А(10), содержащий двузначные числа. Найти по выбору: количество элементов, содержащих цифру 9, сумму цифр третьего элемента, произведение всех чётных элементов.
В целочисленном массиве А(10) вычислить по выбору: максимальный элемент, количество нечётных элементов и среднее арифметическое положительных элементов.

Пример выполнения варианта 10

1. Создать пользовательскую форму Обработка одномерных массивов (рис.2).

2. Поместить на форму элементы управления Label1, Textbox1 (установить значения свойств Multiline=True, ScrollBars=2-fmScrollbarsVertical), Frame1, CheckBox1, CheckBox2, CheckBox3 (установить значение свойства WordWrap=True), TextBox2, TextBox3, TextBox4, CommandButton1, CommandButton2, CommandButton3.

3. Ввести программный код.

Объявить массив А, переменные n – размер массива и i – параметр цикла как глобальные. Для этого записать строки

Dim A(9) As Integer

Dim n, i As Integer

до первой процедуры.

Dim max, p, r, s As Integer - student2.ru

Рис. 2. Пользовательская форма к заданию 2

Текст программы:

Dim A(9) As Integer

Dim n, i As Integer

Private Sub CommandButton1_Click()

Dim k As String

n = 9

TextBox1.Text = ""

For i = 0 To n

k = InputBox("Ввести " + CStr(i + 1) + " элемент")

A(i) = Val(k)

TextBox1.Text = TextBox1.Text + " " + CStr(A(i)) + vbCrLf

Next i

End Sub

Private Sub CommandButton2_Click()

Dim max, p, r, s As Integer

Dim sred As Single

IfCheckBox1.Value = True Then

max = 0

For i = 1 To n

IfA(i) > A(max) Then max = i

Next i

TextBox2.Text = CStr(A(max))

End If

If CheckBox2.Value = True Then

p = 0

For i = 0 To n

If A(i) Mod 2 <> 0 Then p = p + 1

Next i

TextBox3.Text = CStr(p)

End If

If CheckBox3.Value = True Then

s = 0

r = 0

For i = 0 To n

If A(i) < 0 Then

s = s + A(i)

r = r + 1

End If

Next i

If r = 0 Then

MsgBox ("Нет отрицательных элементов")

CommandButton1.SetFocus

Else

sred = s / r

TextBox4.Text = CStr(sred)

End If

End If

End Sub

Private Sub CommandButton3_Click()

End

End Sub

Наши рекомендации