Тема: cкладання та виконання алгоритмів опрацювання величин числового типу в навчальному середовищі програмування.
Мета: навчитися складати та виконувати алгоритми з величинами числового типу в середовищі програмування CodeBlocks з С++. Після виконання роботи учень
знає зміст понять: змінна і стала;
описує:
Обладнання: ПК з встановленими ОС і середовищем програмування CodeBlocks, (дана) інструкція.
Структура уроку
Хід уроку
1. Організаційний момент
Вітання з класом. Перевірка присутності і готовності учнів до уроку. Перевірка виконання домашнього завдання.
2. Актуалізація опорних знань
Подати означення або опис понять, виділених жирним написанням, і порівняти з поданими.
Сталі — вид даних, величину яких заборонено змінювати протягом виконання програми. Їх описують після зарезервованого слова const.
Змінні — вид даних, величину яких дозволено змінювати протягом виконання програми. Їх описують, вказавши їхню назву після зарезервованих слів — назв типів. Наприклад, int k;.
Властивості змінної: назва, тип і поточна величина.
Запис назви змінної чи сталої може містити лише літери латиниці, цифри або нижнє підкреслення і має задовольняти такі вимоги:
Тип даних характеризує допустимі величини для цих даних і сукупністю операцій над ними.
Числові дані можуть бути двох типів: цілі та дійсні.
Цілі типи
Назва типу | Обсяг, байтів | Діапазон |
---|---|---|
int | 2 або 4 | –32768..32767 або –2147483648..2147483647 |
short int | 2 | –32768..32767 |
unsigned short int | 2 або 4 | 0..65536 або 0..4294967295 |
long int | 4 | –2147483648..2147483647 |
unsigned long int | 4 | 0..4294967295 |
Об'єм пам'яті, виділений під величини типу int та unsigned short int, залежать від розрядності операційної системи: 2 байти в 32-розрядній і 4 байти в 64-розрядній системі.
Дійсні типи
Назва типу | Обсяг, байтів | Діапазон |
---|---|---|
float | 4 | 3.4·10–38..3.4·10+38 |
double | 8 | 1.7·10–308..1.7·10+308 |
long double | 10 | 1.18·10–4932..1.18·10+4932 |
Для дійсних чисел вказано діапазони зміни абсолютнної величини (модуля). Дійсні числа можна записувати у форматі з фіксованою крапкою (2.56, –0.3) або у науковому форматі (з рухомою крапкою: –0.23e3=–230, 1.45e–2=0.0145)
Логічний тип bool. Змінні цього типу можуть набувати лише величин: false (хибність) і true (істина). Вони займають 1 байт у пам'яті.
Символьний тип char. Змінні цього типу можуть набувати лише величин з кодової таблиці комп'ютера ASCII.
Символьна стала — це один символ, узятий в одинарні лапки, або число у 8-, 10- чи 16-й системі числення, яке є кодом символу у таблиці ASCII. Наприклад,
char s='f'; d=102;
Зауважимо: 102 — це десятковий код символу «f». Після такого опису:
char s='f'; int n=s;
змінна n набуде величини 102.
Вказівка надання значення має такий вигляд:
<назва> = <вираз>;
або
<назва1> = <назва2> = … = <назваN> = <вираз>;
і діє так: обчислюють вираз і його величину надають змінній або декільком змінним. Вираз може містити числа (сталі чи змінні) та назви функцій, з'єднані символами операцій. Змінна і вираз не обов'язково мають бути одного типу. У С++ реалізовано автоматичне перетворення (узгодження) типів. Розрізняють явне і неявне узгодження типів. При перетворенні дійсного числа в ціле відкидають дробову частину (це не є округленням!). Наприклад, після виконання такого коду:
int b,a; float c; a=2; c=4.9; b=a*c;
змінна b набуде величини 9 після неявного перетворення дійсного числа 9.8 у ціле.
Явне перетворення типів задають у круглих дужках перед змінною чи виразом.
Явне перетворення типів для поданого вище прикладу опису змінних:
Вказівка | Результат виконання |
---|---|
b = (int) c * a; | b = (int) 4.9 * 2 = 4 * 2 = 8 |
b = (int) (c * a); | b = (int) (4.9 * 2 ) = (int) 9.8 = 9 |
Вираз може містити дані різних числових типів (змішані вирази). Узгодження типів у виразах відбувається з урахуванням пріоритету типів:
Оператор введення (з клавіатури) має такий синтаксис:
cin >> змінна>> змінна;
Оператор виведення (на екран) має такий синтаксис:
cout << вираз чи змінна << вираз чи змінна ;
Cкладний оператор — це послідовність операторів, відділених один від одного крапкою з комою, що починається з відкритої фігурної дужки { і закінчується закритою фігурною дужкою }:
{ оператор1; оператор2; … операторn; };
Компілятор сприйме складений оператор як один оператор.
Умовний оператор призначено для того, щоб задати вибір тієї чи іншої дії залежно від справдження певної умови. Цей оператор має такий синтаксис:
if (<умова>) <оператор1>; else < оператор2>;
Як умову використовують значення логічного виразу, як оператори — довільний простий або складений оператор, у тому числі і сам умовний оператор. Якщо значення логічного виразу true, то буде виконано оператор1, якщо false, то буде виконано оператор2.
Якщо згідно з алгоритмом потрібно виконати декілька операторів, тоді потрібно використовувати складений оператор.
Умовний оператор Switch-Case (оператор вибору) використовують у тих випадках, коли залежно від значень якої-небудь змінної треба виконати ті чи інші оператори. Він має такий синтаксис:
switch (<вираз>)
{
case <значення1> : <оператор1>; break;
case <значення2> : <оператор2>; break;
…
case <значенняn> : <операторn>; break;
default: <операторn + 1>
};
Тут операторn + 1 буде виконано лише у тому випадку, коли значення виразу не збігається ні з одним зі значенняj. Після кожного логічно відокремленого блоку потрібно використовувати оператор break для виходу з оператора вибору.
3. Інструктаж з ТБ
4. Вивчення нового матеріалу
Алгоритм створення нового проекту
(виконувати всі дії у процесі ознайомлення)
У вікні діалогу New from template вибрати Empty project і натиснути кнопку Go.
У вікні діалогу Empty project натиснути кнопку Next.
У вікні діалогу Empty project вказати:
і знову натиснути кнопку Next.
У вікні діалогу Empty project: у разі потреби змінити налаштування компілятора (наразі це непотрібно робити), натиснути кнопку Finish
Долучити до проекту файл:
у вікні діалогу New from template вибрати C/C++ source і натиснути кнопку Go;
у вікні діалогу C/C++ source вибрати C++ і натиснути кнопку Next;
у вікні діалогу C/C++ source, натиснувши кнопку …, вказати у полі Filename with full path: шлях до файлу і натиснути кнопку Finish.
Не вдаючись у подробиці, подамо приклад програми, що виводить кирилицю.
#include <iostream> #include <clocale> using namespace std; int main() { setlocale(LC_CTYPE,"rus"); cout << "Перша проба пера\n"; return 0; }
Щоб пересвідчитися у цьому, потрібно:
5. Вироблення практичних навичок
Примітка. Для кожного із наступних завдань програму з назвою-номером завдання записувати у вказану вчителем теку. Про успішне виконання кожного завдання повідомляти вчителя підняттям руки.
Завдання 1. Написати програму знаходження найбільшого спільного дільника (НСД) двох цілих чисел a, b:
Завдання 3. Написати програму обчислення податку залежно від розміру доходу d:
де сталі a, b, c задавати у коді програми, а d — зчитувати з клавіатури.
6. Підбиття підсумків уроку
Виставлення оцінок.
7. Домашнє завдання
Порівняти створені програми з демонстраційними розв'язаннями 1, 2 i 3.
Створити програми для таких обчислень:
Ввести натуральне число і замінюваим його на суму його цифр доти, поки не буде отримано одноцифрове число (корінь початкового числа), яке потрібно вивести.
Удосконалити розв'язання завдання 2, передбачивши перехід до найменшого спільного знаменника замість добутку знаменників.
З’ясувати, чи є 5-цифрове числа є паліндромом, тобто чи збігається запис цифр числа у зворотному порядку із записом числа.
Текст упорядкувала Вітязь Руслана Іванівна, вчитель середньої загальноосвітньої школи № 222 Святошинського району міста Києва, під час виконання випускної роботи на курсах підвищення кваліфікації з 8.09.2013 по 12.09.2013.