Пошук у масиві. Алгоритми пошуку
Вид материала | Урок |
СодержаниеПодсказка для задания 2! |
- Пошук за контекстом, 78.79kb.
- Урок з теми: «Пошук інформації в мережі Інтернет.», 110.55kb.
- Програма фахового вступного випробування для зарахування на навчання за окр «магістр», 385.53kb.
- «Пошук фото- та відео- данних в мережі Internet», 156.59kb.
- Формат опису модуля, 37.96kb.
- Учебник алгебры Лернард Эйлер, 29.33kb.
- Пошук в internet, загальні інформаційні бази даних, 197.36kb.
- Комплекс програм автоматизації бібліотечних процесів, 63.9kb.
- А. С. Поспєлов пошук державою ізраїль зовнішньополітичних союзників в країнах азії, 129.09kb.
- Навчальна програма дисципліни "Алгоритми та структури даних" 050801 " мікро- та наноелектроніка", 63.8kb.
Тема урока: Пошук у масиві. Алгоритми пошуку.
Цель Д: посредством самостоятельного решения задач на сложный поиск в массиве проверить уровень понимания использования сортировки массива для решения задач
Р:
В:
Тип урока:
Ход уроку
- Организационный момент – раздать листики
- Проверка домашнего задания – проверить наличие выполненного д/з
- Самостоятельная работа
1 вариант |
|
|
2 вариант |
1) Поменяйте местами последний и максимальный элементы массива. |
2) Упорядочите одномерный массив, чтобы сначала разместились все элементы, значение которых больше заданного числа, а затем – все остальные. |
ПОДСКАЗКА ДЛЯ ЗАДАНИЯ 2! Вспомните сортировку методом прямого выбора!
Решение
1 вариант
1)
Program n136; Type massiv=array[1..12] of integer; Var a:massiv; i,min,k:word; Procedure Input(Var a: massiv); Var i: integer; Begin for i:=1 to 12 do Begin Write('a[',i,']'); read(a[i]); End; End; Procedure Print(Var a: massiv); Var i: integer; Begin for i:=1 to 12 do Writeln(a[i]); Writeln End; Procedure Findmin(Var a: massiv;Var min,k:word); Var | i: integer; Begin min:=a[1]; k:=0; for i:=2 to 12 do if a[i] Begin min:=a[i]; k:=i; End; End; Procedure Work(var a:massiv); begin a[k]:=a[1]; a[1]:=min; end; Begin Input(a); Findmin(a,min,k); Work(a); Print(a); Writeln(min); End. |
2)
Program n136; Type massiv=array[1..12] of integer; Var a:massiv; Procedure Work(var a:massiv); Var k,i,j:integer; t:word; begin for i:=1 to 6 do | begin k:=i; for j:=i+1 to 7 do if a[j] mod 2 =0 then k:=j; t:=a[i]; a[i]:=a[k]; a[k]:=t; End; End; |
2 вариант аналогичен первому
- Постановка домашнего задания – обменяться заданиями вариантов с соседом
- Подведение итогов урока – собрать листики для проверки