- Презентации
- Презентация по информатике на тему Одномерные массивы (приложение к лекции 9 класс
Презентация по информатике на тему Одномерные массивы (приложение к лекции 9 класс
Автор публикации: Титова Г.Ю.
Дата публикации: 05.11.2016
Краткое описание:
1
Задача. С клавиатуры вводится n чисел (числа могут повторяться). Необходимо подсчитать количество чисел равных наименьшему числу.
2
Тема урока: «Одномерные массивы. Обработка массива»
0
Благодаря этой рекламе сайт может продолжать свое существование, спасибо за просмотр.
3
Цели: Узнать, что такое массив? Что можно хранить в массиве? Для чего он используется? Как записать массив в число? Как считать число из массива? Какие действия можно выполнять над информацией, попавшей в массив?
4
Массив представляет собой совокупность данных одного типа с общим для всех элементов именем. Массив относится к структурированным типам данных (упорядоченная совокупность данных). Номера элементов массива иначе называются индексами, а сами элементы массива — переменными с индексами (индексированными переменными).
5
Значение элемента массива а[3]=2, а[7]=4. Данные в массивах сохраняются только до конца работы программы. Для их долговременного хранения программа должна записать данные в файл. а[3]=2 индекс имя массива значение -5 8 2 4 -9 -1 6 4 2 1
6
Характеристики массива: тип — общий тип всех элементов массива, размерность (ранг) — количество индексов массива, диапазон изменения индекса (индексов) — определяет количество элементов в массиве
7
Способы описания массива Например: Const n=100, var a: array[1..n] of real, { 100 элементов — вещественные числа } b: array[0..50] of char, { 51 элемент — символы } с: array[-3..4] of boolean, { 8 элементов — логические значения } x,y: array[1..20] of integer, { два массива x и у содержат по 20 элементов — целые числа } var ИмяМассива: array [НижняяГраница.. ВерхняяГраница] of Тип Элементов,
8
Способы описания массива Массив можно описать как типизированную константу. Например: const x: array[1..5] of integer=(l,3,5,7,9), В этом примере не просто выделяется память под массив, а происходит заполнение ячеек заданными значениями по строкам.
9
Способы описания массива Предварительное описание типа в разделе описания типов данных. Например. Type z: array[1..20] of integer, Var x, y: z Type ИмяТипа = аггау [НижняяГраница.. ВерхняяГраница ] of Тип Элементов, Var ИмяМассива : ИмяТипа,
10
Как вы думаете, при выполнении программы обязательно заполнять все ячейки данными? Почему? Если ячейка не заполнена то, какое значение в ней находится? Может ли реальное количество элементов в массиве может быть меньше, чем указано при описании? Почему? А может быть больше? Почему?
11
Способы заполнения массива 1. Ввод данных с клавиатуры: for i:=1 to n do read (a[i]), 2. Ввод данных с помощью датчика случайных чисел. Например. Заполним массив числами в диапазоне от -3 до 7. randomize, for i:=1 to n do a[i]:=random(11)-3, 3. Считывая значения элементов из файла: for i:=1 to n do read (f, a[i]),
12
Способы заполнения массива 4. Присваивание заданных значений, Например. Заполним массив четными числами for i:=1 to n do a[i]:=i*2, или for i:=1 to n do begin readln (x), if x mod 2=0 then a[i]:=x Вывод элементов массива Вывод элементов массива осуществляется в цикле: for i:=1 to n do write (a[i],’ ‘)
13
Действия с одномерными массивами Например. Var A, B: array[1..n] of integer, Выражение Результат A=B истина, если значение каждого элемента массиваAравно соответствующему значению элементаB. A<,>,B. результат истина, если хотя бы одно значение элемента массиваAне равно значению соответствующего элемента массиваB A:=B все значения элементов массиваBприсваиваются соответствующим элементам массиваA.
14
Действия над элементами массива. Вычислим сумму элементов. … Const n=10, Var a:array[1..n] of integer, {описываем массив а} i, s: integer, begin randomize, s:=0, for i:=1 to n do begin a[i]:=random(11)-3, {заполняем массив а случайными числами } write (a[i],’ ‘), {вывожу заполненный массив} end, for i:=1 to n do s:=s+a[i], {находим сумму элементов массива а} writeln (‘сумма элементов массива =’, s) {выводим ответ } end.
15
Например: найти произведение элементов имеющих нечетный индекс. … Const n=10, Var a:array[1..n] of integer, {описываем массив а} i, p: integer, begin randomize, p:=1, for i:=1 to n do begin a[i]:=random(11)-3, {заполняем массив а случайными числами } write (a[i],’ ‘), {вывожу заполненный массив} end, for i:=1 to n do if i mod 2<,>,0 then p:=p*a[i] {находим произведение элементов массива а имеющих нечетный индекс} writeln (‘призведение элементов массива =’, s) {выводим ответ } end. Действия над элементами массива.
16
Например, найти номер первого из элементов массива A, имеющего значение равное нулю. Если таких элементов нет, вывести соответствующее сообщение. Const n=10, Var a:array[1..n] of integer, i, p: integer, begin randomize, p:=1, for i:=1 to n do begin a[i]:=random(11)-3, {заполняем массив а случайными числами } write (a[i],’ ‘), {вывожу заполненный массив} end, i:=1, Repeat i:=i+1, until (a[i]=0) or (i=n) , выход из цикла, когда нашли нужный элемент или массив закончился} if a[i]=0 then writeln (‘номер первого нулевого элемента=’, i) else writeln (‘ таких элементов нет!’), end. Действия над элементами массива.
17
Поиск максимального (минимального) элемента и его номера. Например, в одномерном массиве подсчитать количество элементов равных минимальному. Действия над элементами массива.
18
Подведение итогов урока Чем ценны массивы? Каким образом задается описание массива, что в нем указывается? Каким образом задается обращение к элементу массива? Почему при описании массива предпочтительнее употреблять константы , а не указывать размеры массива в явном виде?