Тема: створення інформаційних моделей та їх застосування до розв'язування задач мовою JavaScript.
Мета: навчитися створювати й втілювати комп'ютерні моделі програми у програми для розв'язування задач у середовищі програмування JavaScript. Після виконання роботи учень:
знає зміст понять: модель, об'єкт, предметна галузь, проблема, матеріальна модель, інформаційна модель, компетентісна задача;
пояснює: алгоритм побудови інформаційних моделей;
класифікує: типи моделей;
Обладнання: ПК з встановленими ОС, браузер Google Chrome.
Структура уроку
Хід уроку
1. Організаційний момент
Вітання з класом. Відмітка відсутніх і перевірка готовності учнів до уроку. Перевірка виконання домашнього завдання.
2. Актуалізація опорних знань
Питання щодо моделювання
Вказівки мови JavaScript, які буде використано в роботі:
alert(повідомлення);
— виведення на екран вікна з повідомленням і зупинка виконання скрипту, поки користувач не натисне кнопку ОК.
prompt(рядок тексту-повідомлення, початковий текст у полі);
— виведення вікна з полем для введення тексту і кнопками OK/CANCEL і зупинка виконання скрипту, поки користувач не натисне одну з кнопок або клавішу Esc. Повертає введений текст — рядок або значення null, якщо введення відмінено.
parseInt(рядок тексту, основа_системи_числення)
— повертає ціле число, перетворене з рядка тексту. Основа системи числення — ціле число у діапазоні між 2 і 36. Якщо основа перевищує 10, то для позначення цифр, що більше від 9, використовують літери латиниці в алфавітному порядку. Значення основи потрібно завжди вказувати, щоб уникнути помилки зчитування й гарантування коректності виконання. Інакше (коли основу не вказано) різні реалізації можуть повертати різні результати. При виявленні символу, відмінного від цифри у вказаній системі числення, цим символом і всіма наступними буде знехтувано. Допустимі пробіли попереду й позаду. Якщо перший символ неможливо звести до числового вигляду, повертає NaN.
parseFloat(рядок тексту)
— повертає десятковий дріб, перетворений з рядка тексту. При виявлені знаку, відмінного від + або -, цифр 0..9, крапки чи показника степеня, повертає значення запису до цього знаку, нехтуючи усі наступні символи. Допустимі пробіли попереду й позаду. Якщо перший символ неможливо звести до числового вигляду, повертає NaN.
console.log(дані) — виведення даних на консоль у середовищі розробника.
if умова {вказівка;} else {вказівка;} — повна форма вказівки розгалуження.
if умова {вказівка;} — неповна форма вказівки розгалуження.
<, >, <=, >=, != — бінарні операції порівняння: менше, більше, не перевищує, не менше, відмінне.
&&, || — бінарні логічні операції: «і» та «або».
Створення і виконання програм мовою Javascript у середовищі розробника Google Chrome здійснюють таким чином:
У середовищі браузера Google Chrome натиснути клавіші Ctrl + Shift + j, щоб потрапити на cторінку веб-розробника (праворуч на ілюстрації вкладення Console).
Набрати код програми, натискаючи Shift + Enter в кінці кожного рядка, крім останнього.
В кінці програми натиснути клавішу Enter і отримати результат.
Для редагування програми натиснути клавішу керування вказівником зі стрілкою, спрямованою вгору. Це спричинить появу щойно виконаного коду.
Програму зручно набирати й редагувати у будь-якому текстовому редакторі з підсвіткою службових слів (NotePad++, Kate). А потім скопіювати текст і натиснути клавішу Enter для її виконання. Або скористатися online-сервісом. Наприклад, Web Toolkit Online.
3. Інструктаж з ТБ
4. Вивчення нового матеріалу
Розглянемо етапи розв'язування задач за допомогою комп'ютера: задача — модель — метод — алгоритм — програма — комп'ютер — результати.
Формулювання й уточнення умови задачі. На цьому етапі розглядають досліджуване явище чи об'єкт, формулюють умову задачі, конкретизують, що дано і що потрібно визначити. Задачі можуть бути різними. Наприклад: визначити швидкість руху велосипедиста, площу саду, об'єм тіла; дослідіти траєкторію польоту парашутиста, літака чи ракети; обчислити заробітну платню службовців, дослідити ефективність діяльності фірми. Задають вхідні дані (відстань між містами, довжини сторін, висоту, оклади, кількість працівників тощо). На цьому етапі важливо отримати якнайбільше даних, необхідних для розв'язання задачі.
Створення моделі задачі — формальний запис, що відображає найістотніші властивості досліджуваного об'єкта або явища і зв'язки між даними. Моделями можуть бути креслення чи сукупності формул, які описують зв'язки між даними. Наприклад:
s = vt — модель прямолінійного рівномірного руху;
h = gt2/2 — модель вільного падіння.
Розглянемо таку задачу: «Визначити, скільки метрів сітки потрібно, щоб загородити сад прямокутної форми зі сторонами 24 м і 50 м, і скільки добрив треба придбати, якщо на 1 м2 витрачають 2,5 кг». У цій задачі про сад моделлю є прямокутник, сторони якого задано цілими або дійсними числами (24 і 50), а зв'язок між даними описано такими формулами:
S = ab — площа прямокутника дорівнює добутку довжин двох його непаралельних сторін;
P = 2(a + b) — периметр прямокутника дорівнює подвоєній сумі довжин двох його непаралельних сторін;
m = Sλ — маса необхідного добрива дорівнює добутку площі ділянки на норму витрат добрива (на одиницю вимірювання площі).
Вибір (пошук) методу розв'язування. Методи розв'язування багатох задач випливають з положень конкретних наук: фізики, хімії, математики, біології, економіки тощо. Інколи таке положення записують за допомогою математичної формули. Наприклад, формула s = vt є описом моделі рівномірного руху тіла, однак не є описом методу для визначення часу t чи швидкості v. Методами будуть формули t = s/v, v = s/t.
Запис алгоритму, який однозначно описує послідовність використання формул чи виконання певних дій.
Створення комп'ютерної програми — запису алгоритму розв'язання задачі згідно з правилами зрозумілої для комп'ютера мови програмування. Коли алгоритм створено і описано структури даних, обирають найпридатнішу мову програмування і складають програму цією мовою. Програма має бути правильною, результативною, масовою і зрозумілою. Для простих задач правильність програми є очевидною, інколи її можна довести. Але найчастіше у правильності програми переконуються за допомогою комп'ютерних експериментів з тестами — спеціально підібраними вхідними даними, для яких розв'язки задачі відомі. Лише перевірену (протестовану) програму можна вважати розв'язанням поставленої задачі.
Виконання програми на комп'ютері. На цьому етапі зосереджують увагу на особливостях виконавця алгоритмів — обирають комп'ютер з достатніми можливостями, виконують програму, отримують результати. Наприклад, якщо задачу навчального призначення можна реалізувати на шкільному комп'ютері, то задачі моделювання атмосферних явищ чи взаємодії складних систем потребують спеціалізованих суперкомп'ютерів.
Аналіз результатів. На цьому етапі замовник повинен отримати від виконавця максимум інформації про виконання роботи у зручній для сприйняття формі. Результати досліджень подають у вигляді чисел, таблиць, графіків, креслень, малюнків, рекомендацій тощо. Якщо результати достовірні і задовольняють замовника, то дослідження закінчують оформленням звіту і здаванням робіт замовникові. Якщо ж ні, то процес повторюють, починаючи з етапу, на якому припустилися помилки. Найпоширеніші помилки бувають у програмах, даних, у застосуванні методу розв'язування, побудові моделі задачі, у виборі виконавця робіт тощо.
Завдання. Розглянути побудову моделі на прикладі таких задач:
З'ясувати, чи існує трикутник з даними сторонами. Використати нерівність трикутника: довжина сторони трикутника менша від суми довжин двох інших сторін цього трикутника.
За відомими довжинами сторін трикутника визначити, яким буде трикутник: рівностороннім, рівнобедренним чи різностороннім.
Розв'язання 1.txt, 2.txt, 3.txt записати у теку, вказану вчителем. Використати такі відомості з курсу геометрії щодо визначення виду трикутника за співвідношенням між довжинами його сторін:
трикутник називають рівностороннім, якщо довжини усіх його сторін збігаються. Необхідною і достатньою умовою такого збігу є збіг величин його кутів.
трикутник називають рівнобічним (рівнобедрениим), якщо довжини двох його сторін збігаються і відрізняються від довжини третьої сторони. Необхідною і достатньою умовою такого є рівність двох його внутрішніх кутів між собою і відмінність їх від третього кута.
трикутник називають різностороннім, якщо усі його сторони різні. Необхідною і достатньою умовою такого є відмінність його внутрішніх кутів.
Порівняти з демонстраційними розв'язаннями (1, 2, 3).
6. Підбиття підсумків уроку
Виставлення оцінок.
7. Домашнє завдання
Створити програму, яка встановлює рівність чи нерівність двох трикутників за довжинами їхніх сторін.
Текст упорядкувала Олена Вікторівна Шепель, вчитель інформатики гімназії № 172 «Нивки» Шевченківського району міста Києва, під час виконання випускної роботи на курсах підвищення кваліфікації з 1.10.2016 по 5.10.2018.