Тип урока: урок изучения нового материала.
Технология: личностно-ориентированная.
Цели урока:
- формирование у учащихся понятия двумерного массива, элементов двумерного массива и правил работы с двумерным массивом;
- стимулирование интереса учащихся к данной теме и предмету в целом;
- воспитание у учащихся самостоятельности, коллективизма, ответственности за себя и других;
- развитие мышления, умения применять полученные знания при решении задач различной направленности.
Задачи урока:
развитие познавательного
интереса, логического мышления.
Оборудование: ПК, интерактивная доска.
Программное обеспечение: средство мультимедиа PowerPoint, язык программирования Basic.
ПЛАН УРОКА
- Организационный момент.
- Вводно-мотивационный этап.
- Операционно-содержательный этап.
- Закрепление пройденной темы. Решение задач.
- Подведение итогов урока.
ХОД УРОКА
1. Организационный момент.
Приветствие учащихся, ознакомление учащихся с целями и задачами урока.
2. Вводно-мотивационный этап.
Вопросы:
- Что такое одномерный массив?
- Как осуществляется обращение к элементам одномерного массива?
- Как осуществляется ввод и вывод элементов одномерного массива?
Тестирование.
Вариант 1
- Оператор объявления массива в программе на
языке Бейсик:
- RUN;
- DIM;
- LET;
- REM.
- Что такое индекс массива?
- Размерность массива;
- Глубина массива;
- Ширина массива;
- Объем массива.
- Массив можно заполнить с помощью:
- Операторов DATA и READ;
- Оператора LET
- Цикла и оператора INPUT;
- Все вышеперечисленное.
- Компьютер будет искать строку DATA только тогда,
когда получит инструкцию:
- READ;
- GOTO;
- INPUT;
- STOP.
- Числовой одномерный массив А заполнен
последовательно цифрами 2, 5, 7, 34. Каково будет
значение элемента А(3)?
- 34;
- 5;
- 7;
- 2.
Вариант 2
- Массив - это:
- Память ПК;
- Область памяти ПК;
- Ячейка памяти ПК;
- Структура.
- Что такое индекс массива?
- Размерность массива;
- Глубина массива;
- Ширина массива;
- Объем массива.
- Массив можно заполнить с помощью:
- Операторов DATA и READ;
- Оператора LET
- Цикла и оператора INPUT;
- Все вышеперечисленное.
- Доступ к элементу массива осуществляется по
его:
- Адресу;
- Имени;
- Номеру;
- Ничего из вышеперечисленного.
- Числовой одномерный массив А заполнен
последовательно цифрами 2, 5, 7, 34. Каково будет
значение элемента А(2)?
- 34;
- 5;
- 7;
- 2.
3. Операционно-содержательный этап.
В двумерном массиве каждый элемент фиксируется номером строки и столбца, на пересечении которых он расположен.
Положение элемента в двумерном массиве определяется двумя индексами. Они разделяются запятой.
В качестве индексов могут использоваться любые арифметические выражения, константы, переменные. Если арифметическое выражение содержит дробную часть, то при определении индекса она отбрасывается.
При появлении отрицательного значения индекса вызывает сообщение об ошибке.
Описание двумерного массива
Для определения двумерного массива в программе используется тот же оператор DIM, только при определении размера необходимо указать два индекса - количество строк и столбцов:
DIM A(5,7)
Данное описание предполагает, что в массиве с именем А будет 5 строк и 7 столбцов.
Обращение к элементам массива
При обращении к элементу двумерного массива необходимо указывать два индекса: номер строки и номер столбца.
57 | 34 | 56 | 21 | 44 | 88 | 90 |
11 | 91 | 45 | 88 | 92 | 0 | 37 |
73 | 67 | 85 | 16 | 42 | 30 | 22 |
65 | 92 | 49 | 64 | 27 | 82 | 19 |
62 | 37 | 99 | 10 | 35 | 21 | 11 |
Элемент двумерного массива А(3,6) равен 30
Ввод, вывод элементов двумерного массива
При заполнении и выводе на экран элементов двумерных массивов необходимо использовать вложенные циклы. Внешний цикл будет определять номер строки, а внутренний номер столбца.
For i=a to b
For k=c to d
:
Next k
Next i
4. Закрепление пройденной темы. Решение задач.
Задача 1. Напишите программу формирования и вывода массива произвольного размера так, чтобы каждый последующий элемент, начиная со второго, был больше предыдущего на 5. Первый элемент задайте датчиком случайных чисел.
CLS
Dim A(10,10)
A(1,1)=int(rnd(1)*100)
For k=1 to 10
For m=1 to 10
If k=1 and m=1 then 10
If m=1 and k>1 then A(k,m)=A(k-1,10)+5 else A(k,m)=A(k,m-1)+5
10 next m
Next k
For k=1 to 10
For m=1 to 10
Print A(k,m);
Next m:Print
Next k
end
Задача 2. Напишите программу формирования и вывода массива размером (6*9), каждые 3 последовательных элемента в строке которого составлены по следующему правилу:
- 1-й - числу введенному с клавиатуры
- 2-й - удвоенному индексу строки
- 3-й - случайному однозначному числу
Dim A(6,9)
For k=1 to 6
For m=1 to 9 step 3
Input "введите 1 элемент массива";A(k,m)
A(k,m+1)=2*k
A(k,m+2)=int(rnd(1)*10)
Next m
Next k
For k=1 to 6
For m=1 to 9
Print A(k);
Next m:Print
Next k
Задача 3. Составьте программу формирования одномерного массива из максимальных элементов строк двумерного массива, заданного датчиком случайных чисел.
CLS
Dim A(10,10),B(10)
For k=1 to 10: for m=1 to 10
A(k,m)=int(rnd(1)*100)
Print A(k,m);: Next m: Print: Next k
For k=1 to 10: min=A(k,1)
For m=1 to 10
If A(k,m)<min then min=A(k,m)
Next m
B(k)=min:Next k
For k=1 to 10
Print B(k)
Next k
Задача 4. Напишите программу формирования массива размером 5*5 датчиком случайных чисел. Замените в нем нечетные значения элементов максимальными. Выведите исходный массив и измененный массивы.
CLS: Dim A(5,5)
For k=1 to 5: for m=1 to 5
A(k,m)=int(rnd(1)*100)
Print A(k,m);:Next m:Print:Next k
Max=0
For k=1 to 5
For m=1 to 5
If A(k,m)>max then max:=A(k,m)
Next m
Next k
Print "Максимальное число массива =";max
For k=1 to 5
For m=1 to 5
If A(k,m) mod 2 <>0 then A(k,m)=max
Print A(k,m);
Next m
Next k
Задача 5. Напишите программу, которая заполняет первую строку массива размером 2*5 фамилиями врачей, а вторую их специальностями. Определите и выведите по запросу с клавиатуры фамилию нужного специалиста.
Dim A$(2,5)
Data Иванов, Петров, Сидорова, Кулаков, Ильин
Data окулист, педиатр, стоматолог, кардиолог, лор
For m=1 to 2
For n=1 to 5
Read A$(m,n)
Print A$(m,n)
Next n
Next m
Input "Введите специальность врача" F$
For m1 to 5
If A$(2,m)=F$ then Print A$(1,m)
Next m
5. Подведение итогов урока.