Розробка заняття на тему: Логічні оператори та змінні. Логічний вибір if-else

Про матеріал
Даний матеріал містить матеріал для ознайомлення з поняттями логічних операторів та змінних на базі мови С++, оператором розгалудження іf-else, їх застосуванням, виховувати вміння побудови аналогій, розвивати увагу, грамотність та логічне мислення. Матеріали підібрані з метою мотивувати та активувати учасників гуртка в умовах дистанційного навчання.
Перегляд файлу

 

Первомайський ЦНТТУМ

Гурток «Сучасні технології програмування»

Керівник гуртка Семенова Олена Анатоліївна

 

 

Розробка заняття на тему:

Логічні оператори та змінні. Логічний вибір if-else.

Тема: «Логічні оператори та змінні. Логічний вибір if-else. Алгоритм. Синтаксис. Практичне застосування»

Мета: ознайомитись з поняттями логічних операторів та змінних в С++, оператором  розгалудження іf-else, їх застосуванням, виховувати вміння побудови аналогій, розвивати увагу, грамотність та логічне мислення.

Обладнання: ПК, ПЗ — текстовий редактор, середовище  програмування CodeBlocks або онлайн компілятор С++ .

Хід заняття

1. Організаційний момент та розминка.

 Продовжуємо оволодіння технікою сліпого десятипальцевого набору на клавіатурі.

 На минулих заняттях ми додали до «вихідного набору»  ще чотири букви та потренувались із заголовними літерами.

 Пропоную сьогодні зробити «тематичну» розминку: називаємо 12 слів із нашими буквами, що викликають асоціацію із вихідним днем.

 Отже, маємо букви: А, В, І, Ф, К, Е, П, Р, Г, Н. О, Л, Д, Ж. 

*** При дистанційній формі заняття заходимо на дошку на ресурсі Jamboard і далі 2 варіанта складання і запису слів:

1. Учасники по черзі записують свій варіант слова (онлайн ручкою або в текстовому вікні набором).

2. Учасники по черзі називають свій варіант слова — запис робить керівник.

1. Ліжко     7. Дерево

2. Погода     8. Дірка

3. Жара     9. Фінал

4. Пора     10. Кефір (цікаво, чому? Пиріг мама пече? ))

5. Ігра     11. Кіно

6. Вікно     12. Кава

 Тепер у текстовому редакторі (блокнот, word...) записуємо, як звичайно, 3 рядка цих слів.

*** При дистанційній формі заняття на дошці ресурсу Jamboard можна кожному учаснику обрати колір текстового вікна і провести набір «у прямому ефірі». (цей варіант, на жаль, має сенс лише при невеликій кількості учасників).

2. Основна частина. Розгляд нової теми.

 Частина І. Логічні оператори та змінні.

 *** При дистанційній формі заняття використовуємо подання у вигляді презентації або вмикаємо демонстрацію екрана і працюємо разом в «прямому ефірі».

 Першою частиною нашого сьогоднішнього продовження знайомства із С++ є «логічні оператори та змінні». Давайте пригадаємо наше минуле заняття… Типи даних… Які типи ви пригадуєте? Щось схоже? :)

 Так, розглядаючи типи даних ми згадували один з них під назвою bool — логічні. Може пригадаєте і які значення можуть приймати змінні цього типу?

 Їх небагато: false або true. У мові C++ прийнято, що значення false вважається рівним 0, а значення true вважається рівним 1. Доречі, це загальноприйняті у логіці значення :). Тобто, мова С++ не оригінальна :).

 Що стосується логіки, то у мові програмування C++ використовуються такі логічні операції:

 && – логічне “І”;

|| – логічне “АБО”;

! – логічне “НІ” або його ще називають «логічне заперечення»

==– логічне «дорівнює»… Не плутайте із просто = - це присвоювання, пам“ятаєте?

 А тепер спробуйте написати, як виглядає логічне «не дорівнює»… І так і ні…:) правильно, що це поєднання логічного «НІ» але не з логічним «дорівнює», а з присвоюванням: «!=».

 Як вони працюють? Давайте розглянемо на прикладі різних задач під час сортування шкарпеток :) (пам“ятаєте, щоб було легше сортувати, ми приймали, що в нас є лише білі та чорні шкарпетки)

1. Вам потрібно їх збирати попарно… :) Змінна bool res;//означає, що пара підібрана… :)

 Запитання: яке значення прийме змінна  res, якщо у вас в руках одна біла і одна чорна шкарпетки? :) Пригадуємо: ця змінна приймає значення або «правда», або «неправда», тобто, false або true. А в числовому значенні? Так, в нашому випадку змінна має значення 0… А якщо у вас в руках дві білі? Дві чорні?

 2. Вам потрібно відібрати лише білі шкарпетки. Змінна bool res=true;//означає, що у вас в руках біла шкарпетка

res=!res; - яка шкарпетка у вас в руках? :)

 Частина ІІ. Логічний вибір if-else. Алгоритм. Синтаксис. Практичне застосування.

 Ну, добре, ненадовго відкладемо шкарпетки в сторону… :)

 Щоб зрозуміти, для чого і як використовуються у програмуванні застосовуються логічні оператори та змінні при виникненні вибору… До речі, про вибір.. Пам“ятаєте, як ми називали алгоритм, коли виникав вибір, тобто, умова? Розгалудження… Аналогічно називається і відповідний оператор у програмуванні… Оператор розгалудження..

 Давайте повернемось ще раз до наших шкарпеток… Ось перед нами купа білих та чорних шкарпеток і ми маємо її розсортувати за кольором. Які наші дії, тобто, алгоритм?

Беремо шкарпетку-- якщо шкарпетка біла, то.. наліво :) – інакше ..направо.. так?

 А як буде англійською слово «якщо» - «if», «інакше» ? «else»…

 А давайте наш алгоритм спробуємо записати з цими замінами:

наші дії: беремо шкарпетку…

if (умова — шкарпетка біла)

{наші дії: відкладаємо вправо}

else

{наші дії: відкладаємо вліво}

 Ну, що я вам скажу… Саме так і виглядає і працює в С++ оператор розгалудження, його ще називають оператором логічного вибору if-else. :)

 Ось, наприклад, пам“ятаєте із минулого заняття «фальшиву угадайку»?

#include <iostream>

#include <windows.h>

using namespace std;

int main ()

{int а;

сout<<”Введіть будь-яке число від 1 до 100”<<endl; //повідомляємо, що треба зробити для продовження програми

сin>> а; //в цьому місці виконання програми виникне “пауза”, що триватиме, доки користувач набере число та натисне enter.

сout<<”Ви набрали число”\t<<а<<endl;

return 0;}

 За допомогою оператора розгалудження її можна зробити справжньою «угадайкою»…

#include <iostream>

#include <windows.h>

using namespace std;

int main ()

{int а, b=3;

сout<<”Ми задумали число від 1 до 100. Спробуйте вгадати, яке!”<<endl;

сin>> а;

if (a==b)

{сout<<”Вірно! Ви вгадали!!!”\t<<endl;}

else

{сout<<”Невірно! Ви помилились!! Ми задумали число”\t<<b<<endl; }

return 0;}

 А тепер самостійно змініть цю програму: використайте іншу умову для оператора if-else.. :)

 Давайте розглянемо більш цікаву задачку. Пригадайте наш найпростіший текстовий “калькулятор”, коли користувач з клавіатури вводить два числа і отримує результат чотирьох операцій між ними.

#include <iostream>

#include <windows.h>

using namespace std;

int main()

{

SetConsoleCP(1251);

SetConsoleOutputCP(1251);

int a, b;

cout << "Введіть перше число: ";

cin >> a;

cout << "Введіть друге число: ";

cin >> b;

cout << a << "+ " << b << “=”<<a+b<<endl;

cout << a << "- " << b << “=”<<a-b<<endl;

cout << a << "* " << b << “=”<<a*b<<endl;

cout << a << ": " << b << “=”<<a/b<<endl; // до речі, чому відрізняються знаки в цьому записі?

return 0;

}

 Але користувач не хоче бачити чотири результата, він хоче мати право вибору :). І саме в цьому випадку з’являється причина появи розгалудження - умова. Конструкція if-else якраз і виконує це бажання користувача.

Тобто відповідно до умови з’являються варіанти результата.

 Пригадаємо синтаксис (правила написання) і побудову конструкції if-else.

if (/*умова, яка перевіряється*/)

{/*оператор (дії) 1, що виконуються, якщо умова вірна*/;

}

else

{/*оператор (дії) 2, що виконуються, якщо умова невірна*/;

}

 Тобто, якщо умова вірна, то виконуються дії в фігурних дужках частини if, якщо умова не вірна, то виконуються дії в фігурних дужках частини else.

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

 Запропонуємо йому, наприклад, такий вибір:

cout << "Оберіть операцію: 1 - сума чисел; 2 - різниця чисел. "<<endl;

cin >> n; //не забуваємо, що треба оголосити нову змінну… :)

if (n=1) // якщо n дорівнює 1, то обчислюємо суму

{

cout << a << "+ " << b << “=”<<a+b<<endl;

}

else // інакше обчислюємо різницю

{cout << a << "- " << b << “=”<<a-b<<endl;

}

 Якщо ви вже поліпшили трошки ваш калькулятор, то…

Тепер спробуйте самостійно розв’язати таку задачку:

Орел і решка” (простий варіант)

 Користувачу пропонується вгадати, що задумав комп’ютер: орла чи решку. Для цього він повинен ввести будь-яке число. Ітогом повинна бути відповідь: вгадали, я задумав ... (або “не вгадали, я задумав...”) і малюнок орла чи решки. Перевірка умови виконується таким чином: парне число - орел, непарне - решка. (Остаток від ділення в С++ знаходиться: a%b)

 Малюнки орла та решки ви робили на перших заняттях, хто забув, нагадую: орел - тризуб, решка - 1 гривня. :) (Якщо забули - Google вам у допомогу!, шукаємо схеми вишиванок хрестиком :) )

 Найкраща програма отримає приз ;).  Приємного часу із С++.

docx
Додано
18 листопада 2022
Переглядів
459
Оцінка розробки
Відгуки відсутні
Безкоштовний сертифікат
про публікацію авторської розробки
Щоб отримати, додайте розробку

Додати розробку