Горобець А.А.
Основи програмування мовою Лого. Розв'язок математичних задач з розгалуженнями. Мета: Ознайомити учнів з алгоритмами розв'язування задач із розгалуженням; датчиком остаток. Хід уроку І. Організаційний момент. ІІ. Перевірка домашнього завдання 1. Що таке висловлювання? 2. Зобразити алгоритм розгалуження неповної форми; 3. Зобразити алгоритм розгалуження повної форми; 4. Як записати командами Лого розгалуження ( если умова [дія] ) 5. Як записати командами Лого розгалуження ( если умова [дія 1] [дія 2] ) 6. Для чого призначені датчики «=» та «равны?»? 7. Чи вважаються великі та малі букви рівними? 8. Чи рівні російські і латинські літери, що мають схоже зображення ? 9. Для чого призначений датчик «идентичні?»? 10.
Для чого призначений датчик «входит?»?
11.
Для чого призначені датчики «>» та «больше?»?
12.
Для чого призначені датчики «<» та «меньше?»?
13.
Як відокремлюються датчики від інших даних?
14.
Для чого призначені датчики «и», «или», «не»?
15.
Наведіть приклад складної умови?
16.
Скільки простих умов допускають датчики «и» та «или»? Як записуються
ці умови? Записати умови, які задані словесним описом, за допомогою логічних датчиків Лого: Чи входить слово «но» у слово «вікно» Чи 5 більше за 0? Чи рівні список «Моя школа» та список «Моя 1
Горобець А.А.
сім’я» Чи рівні слово «привіт» та слово «Привіт» Чи 15 дорівнює 16? Чи 8 менше за 0? Чи є число 8 від’ємним ІІІ. Вивчення нового матеріалу. Перевірка числа на парність Умова задачі: Ввести число. Якщо число парне, вивести пояснення «Число парне». Якщо число непарне -«Число непарне». Для перевірки числа на парність потрібно знайти остачу від ділення його на 2. Якщо остача дорівнює 0 - число парне. В Лого існує спеціальний датчик остаток: остаток число1 число2 Він повертає від ділення числа 1 на число2. Остача від'ємного числа буде від'ємною. Якщо число1 або число2 не є цілими числами - вони округлюються до цілого значення. Наприклад, покажи остаток 3 2. Результат - 0,5. покажи остаток 9 9.2. Результат - 0. Запишімо процедуру «задача 1»: это задача1 спроси [Введіть число -] пусть "х ответ если_иначе (остаток :х 2) = 0 [сообщи [число парне]] [сообщи [число непарне]] конец Перевірте роботу процедури на комп'ютері. Пошук найбільшого (найменшого) з чисел Умова задачі: Ввести два числа. Знайти менше з них. Алгоритм розв'язування задачі може бути таким: порівняти між собою числа, якщо число 1 менше від числа2, то повідомити, що меншим є число 1, інакше -число2:
2
Горобець А.А.
Запишімо процедуру «задача2»: это задача3 спроси [Введіть перше число -] пусть "ч1 ответ спроси [Введіть друге число -] пусть "ч2 ответ если_иначе ч1 < ч2 [сообщи [число1 менше] [сообщи [число2 менше]] конец Перевірте роботу процедури на комп'ютері. Тепер розглянемо алгоритм знаходження найменшого (найбільшого) з декількох чисел (більше двох). Для знаходження найменшого з чисел введемо змінну тіп, та на першому кроці алгоритму присвоїмо їй значення першого введеного числа. На наступних кроках будемо почергово порівнювати значення змінної тіп з введеними числами. Якщо знайшлося число менше за поточне значення тіп, ми присвоюємо це значення змінній тіп. Запишімо процедуру для пошуку найменшого з 3-х чисел: зто задачаЗ спроси [Введіть перше число -] пусть "ч1 ответ спроси [Введіть друге число -] пусть "ч2 ответ спроси [Введіть третє число -] пусть "чЗ ответ пусть "тіп :ч1 если
:ч2 < тіп [пусть "тіп :ч2]
если
:чЗ < тіп [пусть "тіп :чЗ]
сообщи [найменше - :тіп] 3
Горобець А.А.
конец Задачі на порівняння Умова задачі: Ввести два числа. Менше з них подвоїти, більше поділити на 2. Вивести числа після зміни. Запишімо процедуру для розв'язування цієї задачі: это задача4.1 спроси [Введіть число Х-] пусть "х ответ спроси [Введіть число У-] пусть "у ответ если_иначе :х > :у [пусть "х :х / 2 пусть "у :у* 2 ] [пусть "у :у / 2 пусть "х :х * 2] сообщи :х сообщи :у конец Практичне завдання. Завдання_1 За зразком першого завдання скласти та перевірити на комп'ютері процедуру для розв'язування задачі: Ввести число і перевірити, чи ділиться воно на 3. Записати процедуру у завдання 1 (робочий аркуш №1І). Завдання_2 Користуючись попереднім завданням, скласти та перевірити на комп'ютері процедуру для розв'язування задачі: Користувач вводить величину кута в градусах (від 0 до 180). Програма аналізує введене число, та виводить назву кута (гострий, прямий, тупий, розгорнутий). Записати процедуру у завдання 2 (робочий аркуш №11). Завдання_3 Скласти та перевірити на комп'ютері процедуру для розв'язування задачі: Ввести 4 числа. Знайти найбільше (максимальне) з них. Записати процедуру у завдання 3.2 (робочий аркуш № 11). Завдання_4 Скласти та перевірити на комп'ютері процедуру для розв'язування задачі: Ввести 4
Горобець А.А.
число. Якщо введене число менше 0, замінити його числом 10, в іншому випадку подвоїти задане число. Записати процедуру у завдання 4.1 (робочий аркуш № 11). Завдання_5 Умова задачі: Ввести два числа - х та у. Знайти число Z, яке дорівнює:
Такий запис умови означає, що коли х більше 0, то z дорівнює добутку х та у, в протилежному випадку z дорівнює різниці їх квадратів. Запишімо процедуру для розв'язування цієї задачі: это задача4.2 спроси [Введіть число Х-] пусть "х ответ спроси [Введіть число У-] пусть "у ответ если_иначе :х > :у [пусть "z :x * :у] [пусть "z :x * :х -:y * :у] сообщи :z конец
Питання для самоконтролю: 1.
Для чого призначений датчик «остаток»?
2.
Як перевірити, чи є число парним?
3.
Як перевірити, чи ділиться число на інше число?
4.
Опишіть алгоритм знаходження найменшого з декількох чисел.
5.
Опишіть алгоритм знаходження найбільшого з декількох чисел.
Домашнє завдання: Вивчити конспект. Скласти та перевірити на комп'ютері процедуру для розв'язування задачі: Ввести два числа - х та у. Знайти число f, яке дорівнює: 5
Горобець А.А.
Записати процедуру у завдання 4.2 это задача1 спроси [Введи число -] пусть "х ответ если_иначе (остаток :х 3) = 0 [сообщи [число кратне 3]] [сообщи [число не кратне 3]] конец это задача2 спроси [Введи кут від 0 до 180 -] пусть "x ответ если и :x > 0 :x < 90 если :x = 90
[сообщи [кут гострий]] [сообщи [кут прямий]]
если и :x > 90 :x < 180 [сообщи [кут тупий]] если :x = 180
[сообщи [кут розгорнутий]]
конец это задача3 спроси [Введіть число x -] пусть "x ответ спроси [Введіть число y -] пусть "y ответ если_иначе :x < :y [ сообщи [число1 менше]] [сообщи [число2 менше]] конец
6