Урок 30. Алгоритми опрацювання табличних величин: пошук елемента з найбільшим /найменшим значенням

Цілі:
  • навчальна: познайомити учнів з особливостями  пошуку найбільшого чи найменшого значення  в таблиці;
  • розвивальна:  розвивати логічне мислення; формувати вміння діяти за інструкцією, планувати свою діяльність, аналізувати i робити висновки;
  • виховна:  виховувати інформаційну культуру учнів, уважність, акуратність, дисциплінованість.
Тип уроку: засвоєння нових знань;  
Хід уроку
І. Організаційний етап
ІІ. Актуалізація опорних знань
Дайте відповіді на запитання:
  • команди повторення та розгалуження мовами програму­вання Free Pascal;
  • команду переривання роботи циклу мовами програму­вання Free Pascal;
  • як описувати складені умови мовами програмування Free Pascal;
ІІІ. Оголошення теми та мети уроку . Мотивація навчальної діяльності
На сьогоднішньому уроці ви дізнаєтесь :
  • як шукати елемент з найбільшим чи найменшим значенням
IV. Вивчення нового матеріалу
Як описати програму пошуку елемента з найбільшим або найменшим значенням?
Для того щоб зрозуміти, як відбувається пошук найбільшого елемен­та деякої табличної величини, уявімо себе на місці виконавця алгорит­му. Елементи табличної величини записані в пам’яті, доступ до комірок якої здійснюється за номерами елементів. Виконавець може одночасно відкривати доступ до однієї комірки. Нехай задано лінійну таблицю з п цілих чисел 
Виконаємо такий алгоритм:
  1. прочитаємо з пам’яті перший елемент таблиці. Його значення дорів­нює 5. Запам’ятаємо його як максимальне — надамо його значення величині max;
  2. прочитаємо другий елемент таблиці. Його значення більше за max, тому «забудемо» про попереднє значення й запам’ятаємо значення max=6;
  3. прочитаємо третій елемент таблиці. Його значення менше за max, тому можна приступати до наступного кроку без зміни значення max.
Продовжимо таким чином кроки алгоритму, поки не бу­дуть переглянуті всі елементи лінійної таблиці до n включ­но. На кожній ітерації циклу в змінній max міститиметься найбільше значення з пройденої частини лінійної таблиці, а по завершенні циклу змінна max зберігатиме максимальне значення в усьому масиві.
Пошук найменшого елемента масиву здійснюють за ана­логічним алгоритмом, знаходячи відповідно елемент (min), який є меншим від усіх переглянутих елементів.
Задача . Визначити найбільше значення елементів табличної величини.
Спочатку вважатимемо, що значення першого елемента табличної ве­личини є найбільшим. Після цього послідовно переглядатимемо значення всіх інших елементів табличної величини, і якщо трапиться значення, що більше того, яке на даний момент вважаємо найбільшим, то вважати­мемо тепер уже це значення найбільшим.
procedure TForm1.Button1Click(Sender: TObject);
var a: array [1..10] of real;
i: integer;  max: real;
begin
for i := 1 to 10 do  a[i]:= StrToFloat(Memo1.Lines[i-1]);
max:=a[1]; //вважаємо, що найбільше значення—значення першого елемента
for i := 2 to 10 do
             If a[i] > max Then max := a[i]; // замінюємо найбільше значення
Label1.Caption := FloatToStr (max) + ‘ — найбільше значення’;
end;
V.  Інструктаж з ТБ
VI. Засвоєння нових знань, формування вмінь
Практичне завдання .
Вправа 2 ст. 132
VІІ. Підсумки уроку
Рефлексія
  • Що ми навчились на уроці
  • Що виявилось занадто важким
VІІI. Домашнє завдання
Підручник п. 18.2   ст. 132
IХ.  Оцінювання роботи учнів