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

Тема: створення ігрового проекту мовою C++.

Мета: навчитися складати та виконувати алгоритми з використанням змінних для розв’я­зування задач мовою С++.

По завершенню навчання учень уміє:

Обладнання: ПК із встановленим ОС і середовищем програмування Code::Blocks, (дана) інструкція.

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

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

Хід уроку

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

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

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

Існує велика кількість мов програмування, однією з найважливіших серед них в індустрії ігор є мова С++. Якщо в найближчому супермаркеті ви зайдете до відділу комп'ютерних ігор і навмання візьмете диск з полиці, цілком ймовірно, що вся гру від першого до останнього рядка буде написано мовою С++. Отже, якщо ви хочете професійно займатися програмуванням ігор, доцільно вивчити С++.

Протягом цього уроку ми навчимося створювати застосунки, які використовують конструкції розгалуження та повторення умови зі змінними. І зробимо це, розробивши ігровий проект «Вгадай число». Поки що без візуалізації.

2. Актуалізація опорних знань

Описати алгоритм створення нового проекту.

Відомості щодо програмування мовою С++

Вказівки (директиви) для препроцесорарядки програми мовою С++, які розпочинають символом #. Їх опрацьовують (виконують) до компіляції програми.

Запис програми мовою С++ зазвичай розпочинають вказівкою #include, яку використовують для долучення інших файлів до коду програми. Розглянемо приклади використання такої вказівки:

using namespace std; — вказує на використання як усталено простору назв std.

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

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

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

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

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

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

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

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

Оператор введення (з клавіатури) має такий вигляд:

cin >> змінна >> змінна;

де кількість змінних може бути більшою.

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

cout << вираз << вираз;

де кількість виразів може бути більшою.

Переведення на новий рядок при виведенні даних на екран здійснюють за допомогою оператора endl;

Наприклад, вказівка:

cout << "Hello, world!" << endl;

виводить привітання: «Hello, world!» і здійснює перехід до нового рядка.

Виведення кирилиці забезпечують використанням вказівки:

setlocale (LC_CTYPE, "ukr");

перед відповідною вказівкою cout.

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

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

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

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

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

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

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

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

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

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

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

Якщо кількість повторень команд тіла циклу до початку виконання команди циклу невідома, потрібно використовувати команду циклу з передумово. Загальний вигляд команди циклу з передумовою такий:
while (<логічний вираз>)
  {
  вказівка1;
  вказівка2;
  …
  вказівкаN;
  }

Вказівку циклу з передумовою буде виконано таким чином:

  1. Обчислити значення логічного виразу.

  2. Якщо отримане значення true, то виконати команди тіла циклу і перейти до перевірки істинності логічного виразу. Інакше (якщо значення false) виконати команду, наступну за вказівкою циклу.

Вказівка return 0 передає операційній системі нульовий код завершеня роботи, тобто повідомлення про вдале завершення програми.

3. Інструктаж з ТБ
4. Вироблення практичних навичок

Завдання 1. Скласти програму для гри «Вгадай число». Програма запитує користувача, в яких межах загадувати число, і отримує відповідь від нього. Потім вона його «загадує» випадкове натуральне число з вказаного діапазону, а користувач намагається відгадати його. Після кожної спроби відгадування програма виводить одину з таких трьох відповідей:

Після перемоги можна також задати питання: «Чи не хочете зіграти ще?» — на розсуд учня.

Зауваження:

Блок-схема ігрового циклу

Примітка. Інколи можна запрограмувати нескінченну послідовність дій (нескінченний цикл) — див. такий приклад виведення цифри 9:

int    t =  9;
while (t == 9) {cout<<test;}

При виконанні цих двох вказівок значення t стале, тому цей цикл ніколи не зупиниться. Єдиний вихід – примусово завершити програму. При програмуванні гри необхідно гарантувати вихід з циклу.

Порівняти складену програму з демонстраційним розв'язанням.

Завдання 2. Завантажити інтегроване середовище програмування C++ або скорис­татися он-лайн середовищем (наприклад, С++ shell) і для складеної програми для завдання 1 зробити таке:

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

6. Домашнє завдання
На основі зробленого у класі створити проект гри, у якій комп'ютер і гравець міняються ролями: гравець вибирає число, а комп'ютер повинен його вгадати.


Текст упорядкувала Наталія Володимирівна Коваль, учитель спеціалізованої школи № 115 ім. І. Огієнка Солом’янського району міста Києва, під час виконання випускної роботи на курсах підвищення кваліфікації з 30.10.2017 по 03.11.2017.