Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 12 лет назад пользователемschool71.kz
1 МассивМассив представляет собой совокупность данных одного типа с общим для всех элементов именем. Массив относится к структурированным типам данных (упорядоченная совокупность данных). индексами переменными с индексами (индексированными переменными).Номера элементов массива иначе называются индексами, а сами элементы массива переменными с индексами (индексированными переменными).
2 Значение элемента массива а[3]=2, а[7]=4. а[3]=2 индекс имя массива значение Данные в массивах сохраняются только до конца работы программы. Для их долговременного хранения программа должна записать данные в файл.
3 Характеристики массива: тип общий тип всех элементов массива; размерность (ранг) количество индексов массива; диапазон изменения индекса (индексов) определяет количество элементов в массиве
4 Способы описания массива Например: 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 Тип Элементов;
5 Способы описания массива Массив можно описать как типизированную константу. Например: const x: array[1..5] of integer=(l,3,5,7,9); В этом примере не просто выделяется память под массив, а происходит заполнение ячеек заданными значениями по строкам.
6 Способы описания массива Предварительное описание типа в разделе описания типов данных. Например. Type z: array[1..20] of integer; Var x, y: z Type ИмяТипа = аггау [НижняяГраница.. ВерхняяГраница ] of Тип Элементов; Var ИмяМассива : ИмяТипа;
7 1.Как вы думаете, при выполнении программы обязательно заполнять все ячейки данными? Почему? 2.Если ячейка не заполнена то, какое значение в ней находится? 3.Может ли реальное количество элементов в массиве может быть меньше, чем указано при описании? Почему? 4.А может быть больше? Почему?
8 Способы заполнения массива 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]);
9 Способы заполнения массива 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], )
10 Действия с одномерными массивами Например. Var A, B: array[1..n] of integer; ВыражениеРезультат A=BA=Bистина, если значение каждого элемента массива A равно соответствующему значению элемента B. AB.результат истина, если хотя бы одно значение элемента массива A не равно значению соответствующего элемента массива B A:=Bвсе значения элементов массива B присваиваются соответствующим элементам массива A.
11 Действия над элементами массива. Вычислим сумму элементов. … 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.
12 Например: найти произведение элементов имеющих нечетный индекс. … 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 20 then p:=p*a[i] {находим произведение элементов массива а имеющих нечетный индекс} writeln (призведение элементов массива =, s) {выводим ответ } end. Действия над элементами массива.
13 Например, найти номер первого из элементов массива 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. Действия над элементами массива.
14 Поиск максимального (минимального) элемента и его номера. Например, в одномерном массиве подсчитать количество элементов равных минимальному. Действия над элементами массива.
15 Подведение итогов урока Чем ценны массивы? Каким образом задается описание массива, что в нем указывается? Каким образом задается обращение к элементу массива? Почему при описании массива предпочтительнее употреблять константы, а не указывать размеры массива в явном виде?
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.