Практична робота "Розгалуження в алгоритмах і програмах".

Мета уроку:

Навчальна: систематизувати, узагальнити і перевірити знання вміння та навички запису мовою програмування алгоритмів з розгалуженням;

розвивати: логічне мислення, інформаційну культуру, пізнавальні інтереси учнів;

виховувати: активність, увагу, дисциплінованість, взаємодопомогу, інтерес до предмета і навчання.

Обладнання та матеріали: персональні комп'ютери, мультимедійний проектор, інтерактивна дошка, програмне забезпечення Delphi 7, програмне забезпечення NetOpSchool, програмне забезпечення SMART Notebook 11, опорні конспекти, картки із завданнями.

Тип уроку: урок практичного застосування знань, навичок й умінь.

Хід уроку

І. Організаційний етап (1-2 хв).

ІІ. Актуалізація опорних знань. Перевірка домашнього завдання (5 хв.)

(Учень, який першим відповідає на запитання, отримує 1 бал.)

· На інтерактивній дошці учням пропонується розгадати анаграми із основними термінами та поняттями.

· Обговорення проблем, які виникли при виконанні проектів із домашнього завдання.

ІІІ. Повідомлення теми, цілей і завдань уроку.(1-2 хв.)

ІV. Виконання завдань практичної роботи.

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

Користуючись програмним середовищем Delphi cтворіть програму, в якій користувачеві запропоновано 3 контрольних запитання з інформатики та отримання результату. Запитання мають бути різних типів, використовуючи обєкти CheckBox, RadioButton, Edit: одне -на вибір кількох відповідей із запропонованих, друге - на вибір однієї відповіді з кількох, третє - на введення відповіді. Створіть форму за наведеним зразком:

Хід виконання завдання

На формі розміщуємо три панелі GroupBox з заголовками (Caption) «Завдання 1», «Завдання2», «Завдання 3» (див. малюнок на наступній сторінці).

На першій GroupBox розміщуємо Image (портрет вченого), Label (текст запитання) та чотири RadioButton (варіанти відповіді).

На другій GroupBox розміщуємо Label (текст запитання) та чотири прапорці CheckBox (варіанти відповіді).

На третій GroupBox розміщуємо Label (текст запитання) та Edit (для вводу відповіді). Щоб довгий текст запитання переносився на навий рядок, надаємо властивості WordWrap (перенесення слів) компонента Label значення true (дозволити).

Під панелями розміщуємо Button «Перевірити», Label («Ваша оцінка») та Edit (для виведення кількості набраних балів).

У заголовку форми (властивість Caption) розмістіть ваш клас та прізвище. Щоб користувач не змінював розміри форми, надайте властивості форми BorderStyle значення bsSingle.

У програмному коді у розділі описів описуємо глобальну змінну N типу integer, яка буде зберігати кількість набраних балів:

 Для форми створюємо обробник події OnCreate (ця подія виникає, коли після запуску нашої програми форма створюється на екрані) - в Інспекторі об'єктів для об'єкту Form1 вибираємо вкладку Події і

виконуємо подвійне клацання у полі проти події OnCreate; при цьому у коді програми автоматично буде створений обробник цієї події.

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

 Для кнопки Button1 створюємо обробник події OnClick (ця подія виникає при клацанні користувачем по даній кнопці).

В обробнику події OnClick для кнопки прописуємо такі дії (оператори):

 якщо користувачем вибрана радіо кнопка RadioButton3 (відповідь «Ейнштейн»), то до кількості набраних балів додати ще 2 бали:

IF RadioButton3.Checked=true THEN N:=N+2;

 якщо користувачем вибрані прапорці CheckBox2 і CheckBox3 (відповіді «300 000 км/с» та

«300 000 000 м/с»), то за кожен вибір додаємо по 2 бали до набраних балів:

IF CheckBox2.Checked=true THEN N:=N+2;

IF CheckBox3.Checked=true THEN N:=N+2;

 якщо користувач вибрав прапорці CheckBox1 і CheckBox4 (з неправильними відповідями), то за кожен вибір віднімаємо по 2 бали від набраних балів:

IF CheckBox1.Checked=true THEN N:=N-2;

IF CheckBox4.Checked=true THEN N:=N-2;

 якщо користувач ввів у поле Edit1 число 300000 (правильну відповідь), то до кількості набраних балів додати ще 3 бали:

IF Edit1.Text='300000' THEN N:=N+3;

 якщо після віднімання балів у користувача кількість балів стала меншою1, то вважаємо кількість балів N=1 (це мінімальна оцінка в українській школі):

IF N<1 THEN N:=1;

 виводимо отриману користувачем кількість балів у поле Edit і робимо форму недоступною для подальшого введення відповідей: властивості форми Enabled (доступність) присвоюємо значення false (недоступна):

Edit2.Text:=IntToStr (N);

Form1.Enabled:=false

Звіт учнів про роботу і теоретичне обгрунтування отриманих результатів.

V. Підсумки уроку.

Обговорення, які труднощі виникали в ході роботи. Оцінювання робіт проводять учні з високим рівнем знань.

VI. Повідомлення домашнього завдання.

Низькийта середній рівень

Складіть блок-схему алгоритму обчислення значення виразу (а + b) - с : а. Виконайте його при різних значеннях а, b, с. Підберіть числа так, щоб кожного разу виконання алгоритму відбувалося по-різному.

Достатній рівень

Створіть проект, в якому можна обчислити значення функції 

                                                                                  y=15-3x, якщо -1<x<4, 

                                                                                  y=6+4x, для всіх інших х.


Високий рівень

Створіть проект, в якому кнопка переміщуватиметься на 20 пікселів вправо при наведенні на неї вказівника. Після того як кнопка зникне за правою межею вікна, вона повинна з'явитися біля лівої його межі.