Тема: cкладання та виконання алгоритмів опрацювання величин числового типу в навчальному середовищі програмування.
Мета: навчитися складати та виконувати алгоритми з величинами числового типу в середовищі програмування Free Pascal. Після виконання роботи учень
знає зміст понять: змінна і стала;
описує:
складати алгоритми опрацювання величин числового типу;
складати, редагувати, налагоджувати та виконувати програми опрацювання числових величин у навчальному середовищі програмування Free Pascal;
аналізувати результати виконання програм опрацювання величин числового типу;
налагоджувати програму та виконувати її у покроковому режимі в навчальному середовищі програмування Free Pascal.
Обладнання: ПК з встановленими ОС і середовищем програмування Free Pascal, (дана) інструкція.
Структура уроку
Хід уроку
1. Організаційний момент
Вітання з класом. Перевірка присутності і готовності учнів до уроку. Перевірка виконання домашнього завдання.
2. Актуалізація опорних знань
Подати означення або опис понять, виділених жирним написанням.
Сталі — вид даних, величину яких заборонено змінювати протягом виконання програми. Їх описують після зарезервованого слова const.
Змінні — вид даних, величину яких дозволено змінювати протягом виконання програми. Їх описують після зарезервованого слова var.
Властивості змінної: назва, тип і поточна величина.
Запис назви змінної чи сталої може містити лише літери латиниці (без розрізнення великих і малих), цифри або нижнє підкреслення і має задовольняти такі вимоги:
Тип даних характеризує допустимі величини для цих даних і сукупністю операцій над ними.
Числові дані можуть бути двох типів: цілі та дійсні.
Цілі типи числових величин мови Паскаль
Тип | Діапазон | Необхідна пам'ять |
---|---|---|
byte | 0..255 | 1 байт |
word | 0..65535 | 2 байти |
shortint | –128..127 | 1 байт |
integer | –32767..32768 | 2 байти |
longint | –2147483648..2147483647 | 4 байти |
int64 | –9223372036854775808..+9223372036854775807 | 8 байтів |
Операції з цілими числами
Назва | Позначення | Приклад | Результат |
---|---|---|---|
додавання | + | 2+3 | 5 |
віднімання | – | 10-8 | 2 |
множення | * | 3*4 | 12 |
частка від ділення | div | 17 div 5 | 3 |
(за)лишок від ділення | mod | 17 mod 5 | 2 |
ділення | / | 17/5 | 3,4 |
Примітка. Якщо один з аргументів від'ємний, результат ділення із залишком може не збігатитя з означенням «чистої математики». Наприклад, результати обчислення виразів (-3) div (-2) і (-3) mod (-2) дорівнюють відповідно 1 і –1, а не 2 і 1.
Дійсні типи числових величин мови Паскаль
Тип | Діапазон | Число значущих цифр | Необхідна пам'ять |
---|---|---|---|
real | 2.9 · 10–39 до 1.7 · 10+38 | 11 – 12 | 6 байт |
single | 1.5 · 10–45 до 3.4 · 10+38 | 7 – 8 | 4 байти |
double | 5.0 · 10–324 до 1.7 · 10+308 | 15 – 16 | 8 байт |
extended | від 3.4 · 10–4932 до 1.1 · 10+4932 | 19 – 20 | 10 байт |
comp | –9.2 · 10–18 до 9.2 · 10+18 | 19 – 20 | 8 байт |
Операції з дійсними числами
Операція | Позначення | Приклад | Результат |
---|---|---|---|
додавання | + | 2 + 3 | 5 |
віднімання | – | 10 – 8 | 2 |
множення | * | 3 * 4 | 12 |
ділення | / | 17 / 5 | 3,4 |
var a: byte; b: integer; c, d, e: real; f: double;
3. Вивчення нового матеріалу
Примітка. Частину поданого далі матеріалу вчитель може призначити на самостійне опрацювання. Але дію кожної переліченої комбінації клавіш чи вказівки меню учень повинен випробувати у дії до наступного уроку.
Призначення вказівок меню і функціональних клавіш
у інтегрованому середовищі програмування
Після знаку рівності "=" подано призначення клавіш.
F10 — перехід у рядок меню:
4. Інструктаж з ТБ
5. Закріплення вивченого матеріалу
Примітка. Завдання виконувати, вважаючи вхідні дані коректними. Передбачити введення чисел з клавіатури й виведення результату на екран. Після завантаження інтегрованого середовища програмування Free Pascal виконати вказівку меню File / New. Набравши текст прогами, компілювати (Alt + F9) й виправляти доти, поки результат компіляції не стане успішним. Запускати на виконання програму (Ctrl + F9) і вводити всі змістовно різні вхідні дані, для яких шлях галуженнями алгоритму різний. У разі помилкових результатів:
створити вікно обчислюваних виразів за допомого вказівки меню Debug / Watch;
задати у ньому подання величин усіх змінних програми, натиснувши клавішу Insert та у вікні діалогу Edit Watch ввести назву змінної та натиснути кнопку OK;
розташувати обидва вікна таким чином, щоб їх було повністю одночасно видно. Наприклад, у лівій і правій частинах програмного вікна;
програму виконувати покроково (F8) з метою знайти і виправити логічну помилку.
Про успішне виконання кожного завдання повідомляти вчителя підняттям руки.
Завдання 1. Написати програму знаходження найбільшого спільного дільника (НСД) двох цілих чисел a, b:
var a,b,c: longint; BEGIN write ('Ввести цілі a, b: '); readln(a,b); write('НСД(',a,', ',b,') = '); if (a=0) or (b=0) then a:=abs(a+b) else begin a:=abs(a); b:=abs(b); repeat c:=a mod b; a:=b; b:=c until b=0 end; writeln(a) END.
Завдання 2. Скласти алгоритм та написати програму знаходження суму двох дробів з натуральними чисельниками і знаменниками:
a/b + с/d. Результат подати правильним дробом.
Алгоритм
var a,b,c,d,p,q: longint; BEGIN write('Ввести натуральні a, b, c, d: ' ); readln(a,b,c,d); write(a,'/',b,' + ',c,'/',d,' = '); p:=a*d+b*c; q:=b*d; a:=p; b:=q; repeat c:=a mod b; a:=b; b:=c until b=0; p:=p div a; q:=q div a; if ((p div q)<>0) then write(p div q); if ((p div q)<>0) and ((p mod q)<>0) then write(' + '); if ((p mod q)<>0) then write(p mod q,'/',q); writeln END.
Завдання 3. Нарахувати податок залежно від розміру доходу d:
6. Підбиття підсумків уроку
Виставлення оцінок.
7. Домашнє завдання
Ввести натуральне число. Замінити його на суму його цифр. Таку дію виконувати, поки не буде отримано одноцифрове число (його називають числовим коренем початкового числа). Вивести отриману цифру.
Удосконалити розв'язання завдання 2, передбачивши перехід до найменшого спільного знаменника замість добутку знаменників.
З’ясувати, чи є 5-цифрове числа є паліндромом, тобто чи збігається запис цифр числа у зворотному порядку із записом числа.
Текст упорядкувала Галина Григорівна Седлецька, вчитель середньої загальноосвітньої школи № 297 Святошинського району міста Києва, під час виконання випускної роботи на курсах підвищення кваліфікації з 28.10.2013 по 01.11.2013.