8bb302815f00f8c37734d7e9c261dcc6.ppt
- Количество слайдов: 16
Что такое массив? Ответ: Массив является набором переменных одного типа, объединённых одним именем. Какие бывают массивы? Ответ: Массивы бывают одномерные, которые можно представить в форме одномерной таблицы, и двумерные, которые можно представить в форме двумерной таблицы. 3, 14 0, 2 -9, 1 23 -2, 5 3, 14 51 3, 14 0, 2 22 0, 2 -9, 1 8, 9 -9, 1 23 25 23 -2, 5 -14 -2, 5
Назовите основные способы заполнения массива? Ответ: Способ заполнения с клавиатуры состоит в том, что значения элементов массива вводятся пользователем с клавиатуры, например с помощью функции Input. Box. Способ заполнения массива с помощью оператора присваивания состоит в использовании оператора присваивания. Задание 1. Назовите любые элементы описанных массивов Dim A (1 то 5) As Integer B (1 то 3) As Byte C (1 то 4) As Single
Задание 2. Для решения каких из нижеперечисленных задач нужны массивы, а в каких задачах можно обойтись и без них? Даны 50 первых натуральных чисел. Найти их среднее арифметическое? Даны 50 чисел. Определить, сколько среди них отличных от данного числа. Даны 100 чисел. Напечатать сначала все отрицательные из них, затем все остальные? Ответ: В задаче 1 можно обойтись без массивов, используя цикл со счётчиком, в задачах 2 и 3 нужно использовать массив.
Задание 3. Опишите следующие массивы: 1) 3, 14 0, 2 -9, 1 23 -2, 5 2) 2 -5 150 1200 Ответ: 1) A (1 то 5) As Single 2) А (1 то 4) As Integer -45 11
Задание 4. Объясните, каким способом происходит заполнение массива элементами: Dim A(1 то 5) As Integer, I As Byte Sub Command 1_Click For I =1 to 5 A (I) = Input. Box (“Введите”, I, “элемент массива”) Form 1. Print A(I) Next I End Sub Ответ: Ввод элементов массива (заполнение) происходит с клавиатуры.
Задание 5 Dim A(1 то 100), I As Byte Sub Command 1_Click For I =1 to 100 A (I)= Int(Rnd*100) Form 1. Print A(I) Next I End Sub Ответ: Ввод элементов массива (заполнение) происходит с помощью случайных чисел в промежутке от 0 до 100.
Задание 6 (Работа с карточками) I вариант. Дописать событийную процедуру нахождения min элемента массива, состоящего из 30 целочисленных элементов, II вариант. Дописать событийную процедуру нахождение индекса max элемента массива, состоящего из 20 десятичных элементов.
Dim A (1 To 30), Min As Integer, I As Byte Sub Command 1_Click Min = A(1) For I =2 to 30 If A(I)< Min Then Min= A(I) Next I Form 1. Print Min End Sub Dim A (1 To 20), Max As Single, I, N As Byte Sub Command 1_Click Max=A(1) For I =2 to 20 If A(I)>Max Then Max= A(I) : N=I Next I Form 1. Print N End Sub
Задание 7. После сбора грибов учитель решил пожалеть тех учащихся, у которых грибов оказалось меньше всего: в корзинки этих учащихся он добавил количество грибов, равное среднему арифметическому от всех собранных учащимися грибов. Определите, какое количество грибов оказалось у каждого после подарка учителя.
1. С помощью функции Input. Box вводим с клавиатуры количество грибников. 2. Формируем массив. 3. В массиве подсчитываем общее количество собранных грибов и находим среднее арифметическое (берётся целая часть от него). Параллельно идёт поиск минимального элемента (за его первоначальное значение принимаем количество грибов, находящихся в первой корзинке). 4. Повторно перебираем корзинки и сравниваем количество грибов, находящихся в корзинках, с минимальным значением. Если количество грибов в корзинке равно минимальному значению, то в эту корзинку добавляем число грибов, равное среднему арифметическому значению. Параллельно выводится на экран количество
Dim G (1 то N), I, SR, min As Byte Sub Command 1_Click N= Input. Box (“Введите количество грибников”) G(1)= Input. Box (“Введите количество грибов у первого грибника”) Min = G(1) SR = G(1) For I =2 to N G(I)= Input. Box (“Сколько грибов собрал”, I, ”-й грибник? ”) If Min > G(I) THEN Min = G(I) SR = SR+ G(I) Next I SR = INT(SR/N) For I =1 to N If G(I) =Min THEN G(I)= G(I)+ SR Form 1. Print G(I); Next I End Sub
Целочисленный числовой массив, состоящий из 10 элементов и заполненный случайными числами необходимо упорядочить по возрастанию значений его элементов. Допустим, нам необходимо упорядочить следующий массив: 70 53 57 28 30 77 1 76 81 70 Как будет выглядеть массив после упорядочени Ответ: 1 28 30 53 57 70 70 76 77 81
I А(I) 1 2 3 4 5 6 7 8 9 10 Значение счётчика чисел 70 53 57 28 30 77 1 76 81 70 До сортировки 70 1 53 1 28 57 2 30 3 53 4 57 5 77 70 6 77 70 76 7 8 81 А(I) 1 28 30 53 57 70 70 76 77 9 77 81 После сортировки
Dim I, A(1 To 10), MIN, J, K, R, N As Byte Private Sub command 1_Click() For I = 1 To 10 A(I)= Int(Rnd * 100) Form 1. Print A(I); Next I Form 1. Print ‘событийная процедура сортировки For = 1 To 10 'вызов общей процедуры поиска минимального элемента Call Мин. Элемент(I, N) 'перестановка R = A(I) = A(N) = R 'печать массива для каждого цикла сортировки For K = 1 To 10 Form 1. Print A(K); Next K Form 1. Print Next I End Sub ‘Общая процедура поиска минимального элемента Sub Минэлемент(I, N As Byte) Min = A(I) N = I For J = I+1 To 10 If A(J) < Min Then Min = A(J): N = J Next J End Sub
Домашнее задание. 1. Выучить п. 4. 13. 4 Сортировка массива. Стр. 218 -220 2. Задание 4. 30 стр. 220. Разработать проект, в котором реализуется сортировка числового массива по убыванию с использованием общей процедуры поиска максимального элемента. Данный проект вы будете реализовывать на компьютере на следующем уроке.
8bb302815f00f8c37734d7e9c261dcc6.ppt