Массивы. Основные теоретические сведения. Примеры решения задач. (9 класс) презентация

Содержание


Презентации» Информатика» Массивы. Основные теоретические сведения. Примеры решения задач. (9 класс)
Массивы 
 9 классОсновные теоретические сведения
 Основные теоретические сведения
 Примеры решения задачОписание массива
 Описание массива
 Описание константного массива
 Ввод элементов массива сМассив в языке Pascal ABC описывается так:
 Массив в языке PascalИмя массива А, диапазон индексов от 1 до 25, размер массиваЗначения элементов, которые не изменяются при работе программы (констант), можно задаватьДля ввода значений с клавиатуры используются стандартные процедуры read или readln.Для того, что бы программа могла при каждом запуске работать сДля задания элементам массива случайных значений используется функция random(k), которая генерируетЕсли элементы массива должны принадлежать промежутку [a; b], то 
 ЕслиДля вывода используют процедуры write или writeln. Процедура write выводит значенияСамый простой способ поиска элементов массива с заданными свойствами – этоМинимальный элемент массива – элемент имеющий наименьшее значение среди всех элементов,Поиск максимального среди n элементов массива.
 Поиск максимального среди n элементовЭтапы решения задачи
 Этапы решения задачи
 Нахождение суммы элементов массива
 ПреобразованиеОпределение исходных данных.
 Определение исходных данных.
 Определение результатов.
 Составление алгоритма решенияДан линейный массив из целых чисел. Найти сумму элементов линейного массива.
Переменная n - количество элементов в массиве, 
 Переменная n -Переменная S - сумма элементов массива
 Переменная S - сумма элементовВвод исходных данных. Массив вводится поэлементно.
 Ввод исходных данных. Массив вводитсяПеременные n и S имеют тип integer
 Переменные n и SVar 	n, i, S, P: integer;
 Var 	n, i, S, P:Запустите программу и введите значения
 Запустите программу и введите значения
 			n=5
Что нужно изменить в программе, для того, чтобы вычислялось произведение элементовЗадан линейный массив. Преобразовать его элементы по следующему правилу: положительные увеличитьИсходные данные
 Исходные данные
 Переменная n - количество элементов в массиве,Ввод исходных данных. Массив вводится поэлементно.
 Ввод исходных данных. Массив вводитсяПеременная n имеет тип integer
 Переменная n имеет тип integer
 ПеременнаяVar 	n, i: integer;
 Var 	n, i: integer;
 	А: array[1..10] ofЗапустите программу и введите значения
 Запустите программу и введите значения
 			n=5
В заданном линейном массиве определить есть ли хотя бы один элементИсходные данные: 
 Исходные данные: 
 Переменная n - количество элементовВвод исходных данных.
 Ввод исходных данных.
 Для решения задачи воспользуемся алгоритмомПеременные n и k имеют тип integer
 Переменные n и kVar 	i,k,n: integer;
 Var 	i,k,n: integer;
 	a: array [1..20] of integer;
Запустите программу и введите значение
 Запустите программу и введите значение
 			n=5
Какой ответ выдаст программа, если в массиве несколько элементов, удовлетворяющих условиюВ заданном линейном массиве посчитать количество элементов, равных заданному числу x.
Исходные данные: 
 Исходные данные: 
 Переменная n - количество элементовВвод исходных данных.
 Ввод исходных данных.
 Для решения задачи воспользуемся алгоритмомМассив целых чисел (а), 
 Массив целых чисел (а), 
 переменныеVar 	i,k,n,x: integer;
 Var 	i,k,n,x: integer;
 	a: array [1..20] of integer;
Запустите программу и введите значение
 Запустите программу и введите значение
 		n=5
Какие изменения нужно внести в программу, что бы находили не толькоВ заданном линейном массиве определить, какой из элементов минимальный или максимальныйИсходные данные: 
 Исходные данные: 
 Переменная n - количество элементовВвод исходных данных.
 Ввод исходных данных.
 Для решения задачи воспользуемся 
Переменная n имеет тип integer
 Переменная n имеет тип integer
 ПеременнаяVar 	i,k,n,nmin,nmax,min,max,r: integer;
 Var 	i,k,n,nmin,nmax,min,max,r: integer;
 	a: array [1..20] of integer;
Запустите программу и введите значение
 Запустите программу и введите значение
 		n=5
Какой результат выдаст программа, если ввести все элементы, равные 3? Почему?



Слайды и текст этой презентации
Слайд 1
Описание слайда:
Массивы 9 класс


Слайд 2
Описание слайда:
Основные теоретические сведения Основные теоретические сведения Примеры решения задач

Слайд 3
Описание слайда:
Описание массива Описание массива Описание константного массива Ввод элементов массива с клавиатуры Задание элементам массива случайных значений Вывод элементов массива Поиск элементов с заданными свойствами Линейный поиск Поиск минимального (максимального) элемента

Слайд 4
Описание слайда:
Массив в языке Pascal ABC описывается так: Массив в языке Pascal ABC описывается так: имя_массива: array[индекс1..индексN] of тип_элементов; Имя массива (идентификатор) задается по тем же правилам, что и имена переменных других типов; Служебное слово array означает массив. В квадратных скобках задается диапазон индексов элементов массива: сначала указывают индекс первого элемента индекс1, затем ставят две точки, после которых указывают индекс последнего элемента индексN. Диапазон индексов определяет максимально возможное количество элементов в массиве – размер массива. Тип элементов может быть любым, например: числа, символы, строки, массивы. Примеры описаний

Слайд 5
Описание слайда:
Имя массива А, диапазон индексов от 1 до 25, размер массива 25 целых чисел. Имя массива А, диапазон индексов от 1 до 25, размер массива 25 целых чисел. var A: array[1..25] of integer ; Этот массив можно описать и так (задав диапазон константами n1 и n2): const n1=1; n2=25; var A: array[n1..n2] of integer; Имя массива Т, диапазон индексов от 20 до 31, размер массива 12 вещественных чисел var T: array[20..31] of real;

Слайд 6
Описание слайда:
Значения элементов, которые не изменяются при работе программы (констант), можно задавать в разделе описаний. Значения элементов, которые не изменяются при работе программы (констант), можно задавать в разделе описаний. Например, массив из 7 простых чисел можно описать следующим образом: const A: array[1..7] of integer =(2,3,5,7,11,13,17);

Слайд 7
Описание слайда:
Для ввода значений с клавиатуры используются стандартные процедуры read или readln. Для ввода значений с клавиатуры используются стандартные процедуры read или readln. Например, следующая программа присваивает значения, вводимые с клавиатуры, пяти элементам массива. var A: array[1..5] of integer; i: integer; begin for i:=1 to 5 do read(A[i]) ; {ввод значений элементов} end.

Слайд 8
Описание слайда:
Для того, что бы программа могла при каждом запуске работать с массивами, которые содержат разное количество элементов, ввод можно организовать следующим образом: Для того, что бы программа могла при каждом запуске работать с массивами, которые содержат разное количество элементов, ввод можно организовать следующим образом: const n_max=100; var A: array[1..n_max] of integer ; i,n: integer; begin writeln('введи количество элементов'); readln(n); writeln('введи элементы'); for i := 1 to n do read(A[i]) ; { ввод значений элементов } end.

Слайд 9
Описание слайда:
Для задания элементам массива случайных значений используется функция random(k), которая генерирует целое случайное число из промежутка [0; k-1]. Для задания элементам массива случайных значений используется функция random(k), которая генерирует целое случайное число из промежутка [0; k-1]. Случайным образом задать n элементов массива А. Значение каждого элемента – число из промежутка [0; 100]. var A: array[1..100] of integer; i,n:integer; begin writeln('введите количество чисел в массиве'); readln(n); for i:=1 to n do begin A[i]:=random(101); write(A[i],' '); end; end.

Слайд 10
Описание слайда:
Если элементы массива должны принадлежать промежутку [a; b], то Если элементы массива должны принадлежать промежутку [a; b], то A[i]:= random(b-a+1)+a; Для задания случайных значений вещественных чисел используется функция random без параметра, которая генерирует число из промежутка [0; 1). A[i]:= random;

Слайд 11
Описание слайда:
Для вывода используют процедуры write или writeln. Процедура write выводит значения элементов массива в строку. При этом выводимые значения необходимо отделять пробелами или иными символами (например, запятой, точкой с запятой), иначе все они будут напечатаны слитно. Для вывода используют процедуры write или writeln. Процедура write выводит значения элементов массива в строку. При этом выводимые значения необходимо отделять пробелами или иными символами (например, запятой, точкой с запятой), иначе все они будут напечатаны слитно. Для вывода значений элементов в столбец используют процедуру writeln.

Слайд 12
Описание слайда:
Самый простой способ поиска элементов массива с заданными свойствами – это последовательный просмотр всех элементов и проверка выполнения условий поиска. Самый простой способ поиска элементов массива с заданными свойствами – это последовательный просмотр всех элементов и проверка выполнения условий поиска. Такой алгоритм поиска называется линейным или последовательным.

Слайд 13
Описание слайда:
Минимальный элемент массива – элемент имеющий наименьшее значение среди всех элементов, а максимальный – наибольшее Минимальный элемент массива – элемент имеющий наименьшее значение среди всех элементов, а максимальный – наибольшее Для нахождение значения минимального (максимального) элемента массива нужно просмотреть все элементы массива и на каждом шаге сравнивать значение текущего элемента с уже найденным на предыдущих шагах значением минимума.

Слайд 14
Описание слайда:
Поиск максимального среди n элементов массива. Поиск максимального среди n элементов массива. max:=A[1]; for i:=2 to N do if A[i]>max then max:=A[i]; После завершения работы в переменной max будет храниться значение максимального элемента массива.

Слайд 15
Описание слайда:
Этапы решения задачи Этапы решения задачи Нахождение суммы элементов массива Преобразование элементов массива Линейный поиск элемента с заданными свойствами Подсчет количества элементов с заданными свойствами Нахождение максимального (минимального) элемента массива

Слайд 16
Описание слайда:
Определение исходных данных. Определение исходных данных. Определение результатов. Составление алгоритма решения задачи. Определение типов переменных. Написание программы. Подготовка тестов и тестирование программы.

Слайд 17
Описание слайда:
Дан линейный массив из целых чисел. Найти сумму элементов линейного массива. Дан линейный массив из целых чисел. Найти сумму элементов линейного массива.

Слайд 18
Описание слайда:
Переменная n - количество элементов в массиве, Переменная n - количество элементов в массиве, Переменная a – линейный массив.

Слайд 19
Описание слайда:
Переменная S - сумма элементов массива Переменная S - сумма элементов массива

Слайд 20
Описание слайда:
Ввод исходных данных. Массив вводится поэлементно. Ввод исходных данных. Массив вводится поэлементно. Определение начального значения для суммы (S:=0). В цикле прибавляем очередной элемент массива к текущему значению переменной, хранящей сумму. Вывод результата.

Слайд 21
Описание слайда:
Переменные n и S имеют тип integer Переменные n и S имеют тип integer Переменная а имеет тип array Элементы массива имеют тип integer. Для работы также необходима переменная i типа integer – счетчик цикла.

Слайд 22
Описание слайда:
Var n, i, S, P: integer; Var n, i, S, P: integer; a: array[1..10] of integer; Begin Write('введите количество элементов массива n='); Readln(n); Write('вводите элементы массива через пробел'); For i:=1 to n do Read(a[i]); S:=0; For i:=1 to n do S:=S+a[i]; writeln('сумма элементов = ',S); End.

Слайд 23
Описание слайда:
Запустите программу и введите значения Запустите программу и введите значения n=5 3 2 4 -1 3 Проверьте, результат должен быть следующим: сумма элементов = 11 Проверить правильность вычислений можно на калькуляторе.

Слайд 24
Описание слайда:
Что нужно изменить в программе, для того, чтобы вычислялось произведение элементов массива? Внесите изменения. Что нужно изменить в программе, для того, чтобы вычислялось произведение элементов массива? Внесите изменения. Измените программу так, чтобы получить сумму и произведение за один проход по массиву.

Слайд 25
Описание слайда:
Задан линейный массив. Преобразовать его элементы по следующему правилу: положительные увеличить на 5, а отрицательные элементы массива заменить их модулями. Задан линейный массив. Преобразовать его элементы по следующему правилу: положительные увеличить на 5, а отрицательные элементы массива заменить их модулями.

Слайд 26
Описание слайда:
Исходные данные Исходные данные Переменная n - количество элементов в массиве, Переменная a – линейный массив. Результат Преобразованный массив а

Слайд 27
Описание слайда:
Ввод исходных данных. Массив вводится поэлементно. Ввод исходных данных. Массив вводится поэлементно. В цикле проверяем текущий элемент, если он положительный, то прибавляем к нему 5, если отрицательный - заменяем его модулем. Вывод результата.

Слайд 28
Описание слайда:
Переменная n имеет тип integer Переменная n имеет тип integer Переменная а имеет тип array Элементы массива имеют тип integer. Для работы также необходима переменная i типа integer – счетчик цикла.

Слайд 29
Описание слайда:
Var n, i: integer; Var n, i: integer; А: array[1..10] of integer; Begin Write('введите количество элементов массива n='); Readln(n); Writeln('вводите элементы массива через пробел'); For i:=1 to n do Read(А[i]); For i:=1 to n do begin if А[i]>0 then А[i]:=А[i]+5; if А[i]<0 then А[i]:=abs(А[i]); end; writeln('преобразованный массив'); For i:=1 to n do write(А[i], ' ') End.

Слайд 30
Описание слайда:
Запустите программу и введите значения Запустите программу и введите значения n=5 3 -2 0 -1 5 Проверьте, результат должен быть следующим: преобразованный массив 8 2 0 1 10

Слайд 31
Описание слайда:
В заданном линейном массиве определить есть ли хотя бы один элемент который является нечетным, не кратным 7 числом, если “да”, то напечатать его номер. В заданном линейном массиве определить есть ли хотя бы один элемент который является нечетным, не кратным 7 числом, если “да”, то напечатать его номер.

Слайд 32
Описание слайда:
Исходные данные: Исходные данные: Переменная n - количество элементов в массиве, Переменная a – линейный массив. Результат: Переменная k – номер позиции, на которой находится элемент Вывод «нет», если элемент не найден.

Слайд 33
Описание слайда:
Ввод исходных данных. Ввод исходных данных. Для решения задачи воспользуемся алгоритмом поиска с барьером. Занесем элемент, удовлетворяющий условию задачи (например, число 5) на последнее место в массив, а затем будем просматривать элементы с начала. Как только элемент найден, остановимся. Если элемент найден на месте n+1, значит в исходном массиве нет элемента, удовлетворяющего условию задачи, иначе печатаем номер найденного элемента. Вывод результата.

Слайд 34
Описание слайда:
Переменные n и k имеют тип integer Переменные n и k имеют тип integer Переменная а имеет тип array Элементы массива имеют тип integer. Для работы также необходима переменная i типа integer – счетчик цикла.

Слайд 35
Описание слайда:
Var i,k,n: integer; Var i,k,n: integer; a: array [1..20] of integer; Begin Writeln('введите количество элементов в массиве'); Readln(n); Writeln('введите элементы'); For i:=1 to n do Read(a[i]); a[n+1]:=5; k:=1; while (a[k] mod 2=0) or (a[k] mod 7=0) do k:=k+1; if k=n+1 then writeln('в массиве нет таких элементов') else writeln('элемент ',a[k],' стоит на месте ',k); End.

Слайд 36
Описание слайда:
Запустите программу и введите значение Запустите программу и введите значение n=5 2 7 21 3 4 Проверьте, результат должен быть следующим: элемент 3 стоит на месте 4

Слайд 37
Описание слайда:
Какой ответ выдаст программа, если в массиве несколько элементов, удовлетворяющих условию задачи? Почему? Какой ответ выдаст программа, если в массиве несколько элементов, удовлетворяющих условию задачи? Почему? Что нужно изменить в программе, чтобы выдавался не первый из найденных элементов, а последний? Измените условие цикла while, так чтобы использовалась логическая операция not.

Слайд 38
Описание слайда:
В заданном линейном массиве посчитать количество элементов, равных заданному числу x. В заданном линейном массиве посчитать количество элементов, равных заданному числу x.

Слайд 39
Описание слайда:
Исходные данные: Исходные данные: Переменная n - количество элементов в массиве, Переменная a – линейный массив. Переменная х – искомое число Результат: Переменная k количество элементов; Если k=0, то таких элементов в массиве нет.

Слайд 40
Описание слайда:
Ввод исходных данных. Ввод исходных данных. Для решения задачи воспользуемся алгоритмом линейного поиска. До просмотра элементов массива k=0. Будем просматривать элементы с начала. Как только элемент найден, увеличим значение k. Проверка значения k. Вывод результата.

Слайд 41
Описание слайда:
Массив целых чисел (а), Массив целых чисел (а), переменные типа integer количество элементов (n), искомое число (x), количество найденных (k), текущий элемент (i);

Слайд 42
Описание слайда:
Var i,k,n,x: integer; Var i,k,n,x: integer; a: array [1..20] of integer; Begin Writeln('введите количество элементов в массиве'); Readln(n); Writeln('введите элементы'); For i:=1 to n do Read(a[i]); Writeln('введите число х'); Readln(x); k:=0; for i:=1 to n do if a[i]=x then k:=k+1; if k=0 then writeln('в массиве нет таких элементов') else writeln('в массиве ',k,' элементов =',x); End.

Слайд 43
Описание слайда:
Запустите программу и введите значение Запустите программу и введите значение n=5 введите элементы 2 2 3 2 4 введите число х 2 Проверьте, результат должен быть следующим: в массиве 3 элементов =2

Слайд 44
Описание слайда:
Какие изменения нужно внести в программу, что бы находили не только количество элементов, равных х, но их сумму. Какие изменения нужно внести в программу, что бы находили не только количество элементов, равных х, но их сумму. Предложите разные способы. Определите, какой процент от общего количества составляют найденные элементы.

Слайд 45
Описание слайда:
В заданном линейном массиве определить, какой из элементов минимальный или максимальный встречается раньше. В заданном линейном массиве определить, какой из элементов минимальный или максимальный встречается раньше.

Слайд 46
Описание слайда:
Исходные данные: Исходные данные: Переменная n - количество элементов в массиве, Переменная a – линейный массив. Результат: Текстовый ответ – минимальный встречается раньше или максимальный встречается раньше.

Слайд 47
Описание слайда:
Ввод исходных данных. Ввод исходных данных. Для решения задачи воспользуемся Найдем минимальный элемент массива (min) и его номер (nmin) Найдем максимальный элемент массива (max) и его номер (nmax) Сравним значения номера максимального и номера минимального элементов Вывод результата.

Слайд 48
Описание слайда:
Переменная n имеет тип integer Переменная n имеет тип integer Переменная а имеет тип array Элементы массива имеют тип integer. Переменные min, max, nmin, nmax имеют тип integer. Для работы также необходима переменная i типа integer – счетчик цикла.

Слайд 49
Описание слайда:
Var i,k,n,nmin,nmax,min,max,r: integer; Var i,k,n,nmin,nmax,min,max,r: integer; a: array [1..20] of integer; Begin Writeln('введите количество элементов в массиве'); Readln(n); Writeln('введите элементы'); For i:=1 to n do Read(a[i]); {поиск минимального элемента} min:=a[1]; nmin:=1; for i:=2 to n do if a[i]<min then begin min:=a[i]; nmin:=i; end; {поиск максимального элемента} max:=a[1]; nmax:=1; for i:=2 to n do if a[i]>max then begin max:=a[i]; nmax:=i; end; if nmin<nmax then writeln('минимальный встретился раньше') else writeln('максимальный встретился раньше') End.

Слайд 50
Описание слайда:
Запустите программу и введите значение Запустите программу и введите значение n=5 введите элементы 2 5 1 3 4 Проверьте, результат должен быть следующим: максимальный встретился раньше

Слайд 51
Описание слайда:
Какой результат выдаст программа, если ввести все элементы, равные 3? Почему? Какой результат выдаст программа, если ввести все элементы, равные 3? Почему? Внесите в программу изменения, чтобы ответ был верным. Можно ли получить ответ не храня значения минимального и максимального элементов в соответствующих переменных? Как это сделать?


Скачать презентацию на тему Массивы. Основные теоретические сведения. Примеры решения задач. (9 класс) можно ниже:

Похожие презентации