Similar presentations:
Одномерные массивы. Наглядный материал
1. Наглядный материал
Одномерные массивыНаглядный материал
2. Операции над массивами
1. Нахождение максимального (минимального) элемента массива.2. Удаление элементов из массива.
3. Вставка элементов в массив.
4.Сортировка массива.
5. Бегущая строка.
1)Дан массив целых чисел, состоящий из 7 элементов.
Найти максимальный элемент.
2)Дан массив целых чисел, состоящий из 7 элементов.
Удалить все нечётные числа.
3)Дан массив целых чисел, состоящий из 5 элементов.
Вставить элемент «0» перед каждым чётным элементом.
4)Дан массив целых чисел.
Расположить числа по возрастанию
5)Дан массив целых чисел, состоящий из 7 элементов.
3. Нахождение максимального элемента массива и его номера
Предполагаем, что первый элемент массива – максимальный, номермаксимального элемента равен 1.
Просматриваем массив со второго до последнего. Если текущий элемент
больше максимального, то максимальному элементу присваиваем значение
текущего элемента, номеру максимального элемента – номер текущего.
max<a[3]
max:=a[1]
i:=1
max:=a[3]
max>a[2]
i:=3
max<a[4]
max<a[6]
max>a[5]
i:=6
max<a[7]
max:=a[4]
max:=a[6]
i:=4
Максимальный элемент равен 70, его номер равен 6
Блок-схема
4. Нахождение максимального элемента и его номера
началоЗаполняем
массив
max:=a [ 1 ]
Nom_Max:= 1
i:=2, n,1
да
нет
a [ i ] >max
max:=a [ i ]
Nom_Max:= i
Вывод max,
Nom_Max
конец
5. Удаление элементов из массива
Просматриваем массив с конца. Удаляем все нечётные числа.•Просматриваем массив с текущего элемента до конца.
Предыдущему элементу присваиваем следующий.
•Уменьшаем количество элементов на один.
•Просматриваем следующий элемент.
Элемент
Элемент Элемент Элемент
Элемент Элемент
a[2]:=
a[3]
Элемент
Всечетный.
нечётные элементы
удалены.
a[1]:=
a[2]
a четный.
[6]:=a [7]
четный.
четный.
нечетный.
нечетный. a[3]:= a[4]
нечетный.
Удалять не
неУдалять не
Удалять не
a[2]:=Удалять
a[3]
Удаляем Удаляем
Удаляем
m=5-1m:=6-1
m:=7-1
надо
надо
надо
надо
a[3]:= a[4]a[4]:= a[5]
a[4]:= a[5]a[5]:= a[6]
Блок-схема
6. Удаление элементов из массива
началоm:=n
Заполняем
массив
i:=m, 1,-1
да
нет
a [ i ] mod 2 =1
j:= i, m-1,1
a [ j ]:=a [ j+1]
m:=m-1
выводим
массив
конец
7. Вставка элементов в массив
Просматриваем массив с конца. Находим чётные элементы.•Следующему элементу присваиваем предыдущий, начиная с конца до
текущего.
•Текущий элемент присваиваем «0».
•Увеличиваем количество элементов на один.
•Просматриваем следующий элемент.
Элемент Элемент Элемент Элемент Элемент
Чётный. нечётныйнечётный Чётный. нечётный
a[5] a[4]:= 0
a[7]:= a[6] a[4]:= a[3] a[1]:= 0a[6]:=
m:=m+1
a[5]:= a[4]
a[6]:= a[5] a[3]:= a[2]
a[5]:= a[4]
m:=m+1
a[2]:= a[1]
Все «0» расставлены по местам
Блок-схема
8. Вставка элементов в массив
началоm:=n
Заполняем
массив
i:=m, 1,-1
да
a [ i ] mod 2 =0
j:= m, i ,-1
a [ j+1 ]:=a [ j]
a [ i ] := 0
m:=m+1
выводим
массив
конец
нет
9. Сортировка массива
Просматриваем массив с начала до конца.•Сравниваем просматриваем
Аналогично
текущий элементмассив
со следующим.
с первого
Если
элемента
текущийпо
элемент
предпоследний,
больше, меняем их
находим
местами,
максимальный
если нет, оставляем
элемент
на и
своих
ставим
местах.
его на
предпоследнее
Затем
просматриваем массив с первого
•Просматриваем место.
следующий
элемент.
элемента
по третий
с конца, a[3]<a[4]
максимальный
элемент
ставимa[6]>a[7]
на
a[1]<a[2]
a[2]>a[3]
a[4]>a[5]
a[5]>a[6]
третье с конца c:=a[3]
место и т.д.
c:=a[5]
c:=a[6]
c:=a[7]
a[3]:=a[2]
a[5]:=a[4] a[6]:=a[5] a[7]:=a[6]
Сортировка массиваa[4]:=c
завершена.
a[5]:=c
a[6]:=c
a[2]:=c
Блок-схема
10. Сортировка массива
Метод всплывающего пузырьканачало
Заполняем
массив
k:=1, n-1,1
i:=1, n-k,1
да
нет
a [ i ] >a [ i+1]
C:=a [i]
a [ i ]:=a [ i+1]
a [ i+1 ]:=c
выводим
массив
конец
11. Циклический сдвиг элементов массива, или «бегущая строка»
•Запоминаем первый элемент массива.•Просматриваем элементы массива с первого по предпоследний и
текущему элементу присваиваем значение следующего элемента.
•Последнему элементу массива присваиваем значение первого элемента,
которое запомнили.
c:=a[1]
Для
получения эффекта «бегущей строки» будем повторять эти
a[1]:=a[2]
действия a[2]:=a[3] a[3]:=a[4] a[4]:=a[5] a[5]:=a[6] a[6]:=a[7] a[7]:=c
Блок-схема
12. Циклический сдвиг элементов массива, или «бегущая строка»
началоЗаполняем
массив
C:=a [1]
i:=1, n-1,1
a [ i ]:=a [ i+1]
a [ n ]:=c
Очищаем экран
GotoXY (10, 10)
выводим
массив
Задерживаем
Массив на экране
Delay (1000)
нет
Любая клавиша
нажата
да
конец
13.
ЗаданиеК каждой блок-схеме напишите программу.
programming
informatics