Розробка уроку — практичної роботи

Тема: cтворення інформаційних моделей та їх застосування до розв'язування задач мовою C#.

Мета: сформувати навички побудови інформаційної моделі, використовуючи програмні засоби. Після виконання роботи учень повинен вміти:

Обладнання: комп’ютери IBM PC з встановленими ОС та середовищем програмування мовою C# або стійким доступом до мережі Інтернет для роботи з online-компілятором (наприклад, rextester).

Структура уроку

  1. Організаційний момент.
  2. Актуалізація опорних знань.
  3. Вивчення нового матеріалу.
  4. Інструктаж з ТБ.
  5. Закріплення вивченого матеріалу.
  6. Підбиття підсумків уроку.
  7. Домашнє завдання.

Хід уроку

1. Організаційний момент
Вітання з класом. Перевірка присутності і готовності учнів до уроку. Перевірка домашнього завдання. Критерії оцінювання рівня навчальних досягнень учнів у результаті виконання практичної роботи.

2. Актуалізація опорних знань
(відомості щодо програмування мовою С#)

Основна частина програми мовою на C# має такий вигляд:

static main() {тіло програми}

Оператор виведення на екран має такий вигляд:

System.Console.WriteLine(змінна);

Якщо додати на початок програми директиву

using System ;

класи і методи System можна використовувати безпосередньо, не вказуючи їх повні назви. Наприклад, можна писати Console.WriteLine замість System.Console.WriteLine.

Переведення на новий рядок при виведенні даних на екран здійснюють за допомогою виведення символу \n (ознаки кінця рядка), який виводять безпосередньо перед початком нового рядка.

Операції поділяють на унарні і бінарні. До унарних належать ті, в яких використано один операнд (аргумент), до бінарних — ті, в яких використано два операнди.

Бінарні арифметичні оператори

НазваЗапис
Додаванняa + b
Відніманняa - b
Діленняa / b
Множенняa * b
Лишок від
ділення
a % b

Наприклад, 4 — результат операції 9%5.

Унарні арифметичні оператори:

Наприклад, такий фрагмент коду:

static void Main(string[] args)
{ int a = 0, b = 5;
  a++; // a=1;
  b--; // b=4;
  System.Console.WriteLine(a);
  System.Console.WriteLine(b);
}

виведе числа 1 і 4 по одному в рядку.

Примітка. Символи // перетворюють решту частину рядка на коментар, який буде проігноровано компілятором.

Оператори порівняння

НазваЗапис
Більше >
Менше <
Не менше >=
Не перевищує <=
Дорівнює ==
Не дорівнює !=

Оголошення змінних в С# здійснюють таким чином: спочатку вказують тип даних для обраної змінної, а потім назву цієї змінної.

Запис назви змінної або сталої може містити лише літери латиниці, цифри або нижнє підкреслення і має задовольняти такі вимоги:

Вказівка надання значення має такий вигляд: <назва> = <вираз>;
або <назва1> = <назва2> = … = <назваN> = <вираз>;

Наприклад, int a; float b; char d='s'; bool k=true;

ТипОбласть значеньРозмір
int-2147483648 до 2147483647Знакове 32-біт ціле

Примітка. В С# запис оператору надання значення (=) не використовують для позначення рівності при порівнянні значень. Для позначення рівності використовують подвійний запис цього самого символу (==).

Умовний оператор if призначено для виконання операції у лише при справдженні певного висловлювання (логічного виразу, умови). Висловлювання записують у круглих дужках після запису if. У фігурних дужках записують вказівки, які потрібно виконати при справдженні висловлювання. Цей оператор має такий синтаксис:

if (умова) оператор1; else оператор2;

Тут оператор — довільний простий або складений оператор, у тому числі й умовний оператор. При справдженні умови (значення логічного виразу true) буде виконано оператор1, інакше (значення логічного виразу false) буде виконано оператор2.

Складну умову записують за допомогою таких операцій:

&& — логічне «і» — результат справджується лише за умови справдження обох висловлювань, між якими записано &&

|| — логічне «або» — результат справджується лише за умови справдження хоча б одного з висловлювань, між якими записано ||;

! — заперечення — результат справджується лише за умови хибності висловлювання, перед яким записано !.

Наприклад, запис 3 < d < 8 записують таким чином:

(3 < d) && (d < 8)

Cкладний операторпослідовність операторів, яку компілятор сприймає один оператор — записують у фігурних дужках, завершуючи кожний з них крапкою з комою:

{ оператор1; оператор2; … операторn; };

Для запису повторення певних послідовностей вказівок зручно використовувати цикл for:

for
(
  дія до початку циклу;
  умова продовження циклу;
  дія в кінці кожної ітерації циклy
)
{
  вказівка1;
  вказівка2;
  …
  вказівкаN;
}

3. Вивчення нового матеріалу

Модель (латиною modulus — міра, зразок, норма) — це прообраз, опис або зображення якогось об'єкта.

Моделюванняце процес створення моделі.

Моделювати можна не лише наявні предмети, явища та процеси, але й абстракції, яких немає в реальності (модель невиявленої елементарної частинки); об’єкти, які лише планують створити (проект нової станції метрополітену); явища, які можуть і не відбутися (вибух на хімічному заводі). Моделювання здійснюють з метою пізнання властивостей об’єкта, тому термін моделювання застосовують ще й в іншому значенні: дослідження об’єктів за допомогою побудови й вивчення їхніх моделей.

Моделі поділяють на види різними способами: в залежності від призначення, фактора часу, способу реалізації тощо.

За призначенням розрізняють моделі навчальні, дослідні, науково-технічні, імітаційні та інші.

Навчальні моделі застосовуються для демонстрації та вивчення властивостей об’єкта-оригінала. Наприклад, на шкільних уроках географії використовують модель земної кулі — глобус, на уроках фізики — модель парового двигуна тощо. У підготовці водіїв транспортних засобів, машиністів, льотчиків використовують спеціальні моделі — тренажери, на яких вони відпрацьовують навички управління.

Дослідні моделі широко застосовують при проектуванні механізмів, споруд тощо. Вивчення поведінки чи властивостей моделі дає можливість виявити й усунути помилки у проекті. Наприклад, архітектор створює макет майбутньої споруди, щоб уточнити всі її деталі, перш ніж розпочати реалізацію проекту.

Науково-технічні моделі створюють для дослідження явищ і процесів. Моделювання дозволяє перенести їх вивчення з реальних умов у лабораторні. Наприклад, кульову блискавку відтворюють за допомогою штучно створених електричних розрядів високої напруги.

Імітаційні моделі (імітувати означає підроблювати, наслідувати) застосовують у тих випадках, коли потрібно перевірити дію певних чинників непрямим способом. Наприклад, перед тим як запровадити у вжиток новий лікарський препарат, його випробовують на тваринах. Це імітаційний експеримент.

За фактором часу розрізняють моделі статичні й динамічні.

Статична модель відображає стан об’єкта у певний момент часу. Статичні моделі називають також структурними, бо вони характеризують будову й параметри об’єкта. Прикладами статичних моделей є моделі внутрішніх органів людини, які застосовуються при вивченні анатомії; моделі розподілу економічних ресурсів між країнами світу.

Динамічна модель відтворює зміни об’єкта з плином часу або особливості функціонування об’єкта (тому динамічні моделі називають також функціональними). Прикладом динамічної моделі є модель броунівського руху молекул газу, яка дозволяє спостерігати їх переміщення й зіткнення в обмеженому просторі.

За способом реалізації моделі поділяють на два види — матеріальні та інформаційні.

Матеріальна модель (називають також предметна, натурна, фізична) — це певне реальне втілення прототипу. Наприклад, зменшена копія літака, опудало птаха, макет архітектурного ансамблю тощо.

Інформаційна модельце інформація про властивості та стан об’єкта, його взаємозв’язки із зовнішнім світом, призначена для проведення теоретичних досліджень.

Фізична карта України, рівняння хімічної реакції, математична функція, розповідь про береги Дніпра — це приклади подання інформаційної моделі. Як і матеріальні моделі, інформаційні моделі одного й того ж об’єкта будуть різні залежно від мети дослідження. Наприклад, інформаційна модель об’єкта «помідор» для постачальника міститиме дані про розміри, умови зберігання, фактори і терміни дозрівання, максимальні терміни зберігання тощо. А для фермера інформаційна модель цього самого об’єкта міститиме дані про час сіяння, регулярність прополювання і поливання, раціональне використання добрив тощо.

За способом подання інформації інформаційні моделі поділяють на:

Комп’ютерна модельце інформаційна модель, реалізована з допомогою комп’ютера.

Комп’ютерна модель допомагає спостерігати й досліджувати явища й процеси у динаміці їх розгортання, здійснювати багаторазові випробування моделі, одержувати різноманітні кількісні показники в числовому або графічному поданні, зокрема такі, які вимагають виконання складних, численних або трудомістких розрахунків.

Основні етапи комп’ютерного моделювання

  1. Постановка задачі та її аналіз.
  2. Побудова інформаційної моделі.
  3. Розробка методу й алгоритму дослідження моделі.
  4. Розробка комп’ютерної моделі.
  5. Проведення комп’ютерного експерименту.

4. Інструктаж з ТБ
5. Закріплення вивченого матеріалу


Створимо комп'ютерну модель для такого завдання.

Задача 1. В кімнаті стоять табуретки і стільці. У кожної табуретки — 3 ніжки, у кожного стільця — 4 ніжки. Якщо на всіх стільцях і табуретках сидять люди, в кімнаті 39 ніг. Скільки в кімнаті табуреток і скільки стільців?

Розв'язання. Якщо на табуретці сидить людина, то маємо всього 5 ніг, а якщо на стільці, то 6. Складемо таблицю, у якій через x позначимо кількість стільців.

x6x39 – 6x⋮5
0039ні
1633ні
21227ні
31821ні
42415так
5309ні
6363ні
742– 3ні

Відповідь: 4 стільці і 3 табуретки.

У цій задачі математичну модель можна записати такими співвідношеннями:

x ∧ 0 ≤ xm/6 ∧ (m – 6x) ⋮ 5,

де m = 39 — загальна кількість ніг. Розмовною мовою це звучить так: кількість стільців є цілим числом, розташованим між нулем і m/6 включно, при цьому різниця m – 6x кратна 5.

Якщо m — змінна величина, то для розв'язання такої модифікованої задачі математична модель є необхідною, але недостатньою. Потрібно створити комп'ютерну модель. При цьому реалізація власне таблиці у програмі непотрібна. А от перебір варіантів (рядків таблиці) необхідний. Його можна реалізувати за допомогою циклу:

for (int x = 0; x<=m/6; x++) {…}

та умовного оператора:

if (((39 - 6*x)%5)==0) {…}

Завдання 1.

  1. Скласти програму для розв'язання модифікованої задачі 1: загальну кількість ніг вводити з клавіатури, результат виводити на екран.

  2. Записати програму з назвою Ваше прізвище1 у вказану вчителем теку.

  3. Порівняти своє розв'язання з демонстраційним.

Задача 2. Дешифрувати запис дії додавання у десятковій системі числення:

ten + ten + forty = sixty,

у якому різними літерами позначено різні цифри.

Математичною моделлю для розв'язання цієї задачі є запис дії додавання у стовпчик і добре відомі правила додавання у десятковій системі числення. Розв'язання у стилі чистої математики, тобто без використання програмного забезпечення, є ситуативним: його важко узагальнить чи навіть переробити для дешифрації інших записів.

Завдання 2.

  1. Скласти програму для розв'язання задачі 2 за допомогою вкладених циклів та умовних операторів.

  2. Записати програму з назвою Ваше прізвище2 у вказану вчителем теку.

  3. Порівняти своє розв'язання з демонстраційним.

6. Підбиття підсумків уроку
Виставлення оцінок.

7. Домашнє завдання
Скласти програму для розв'язання такої задачі: у магазин привезли m літрів олії у бідонах по 10 і 17 л. Скільки було бідонів кожного виду?


Текст упорядкувала Федорченко Ірина Анатоліївна, учитель інформатики спеціалі­зованої школи № 112 міста Києва, під час виконання випускної роботи на курсах підвищення кваліфікації з 27.11.2017 по 01.12.2017.


В роботі було використано матеріали випускної роботи Гедзун Мар'яни Вікторівни та Потужної Марини Володимирівни.