Паскаль (Pascal) – основи програмування для початківців. Введення у мову програмування Паскаль. Початковий рівень Приклади програмування в паскалі шкільна програма

💖 Подобається?Поділися з друзями посиланням

У цій статті будуть описані основи мови програмування Паскаль, необхідні для написання перших програм: структура програми, поняття змінної, типи даних, математичні оператори та функції, оператор присвоювання, введення та виведення даних. Ще раз наголосю на тому, що дана стаття для перших кроків у вивченні мови для учнів 7-8 класів. Тут немає поглибленого розгляду (для цього є відповідна література).

Структура програми

Структура програми — сукупність розділів, у тому числі складається програма.

Для написання першої програми мовою Паскаль достатньо знати два розділи (насправді їх більше):

  • розділ опису змінних var— у цьому розділі через кому перераховуються імена змінних, які у програмі. Далі вказується їх тип.
  • тіло програми - починається зі слова beginі закінчується словом end.(З точкою). У цьому розділі пишеться текст самої програми
varзмінні: тип даних; beginтіло програми end.

Змінні

Що таке змінна.

Уявімо змінну як комірку пам'яті, якій ми присвоюємо ім'я і в якій ми можемо щось зберігати (число чи текст).

Осередки пам'яті з іменами a, b, c

Ім'я змінної має відповідати таким вимогам:

  • складатися з букв латинського алфавіту (a-z, A-Z), цифр та знака підкреслення «_»;
  • Ім'я змінної не повинно починатися з цифри (але може починатися зі знака «_» ( Наприклад: _primer).
  • ім'я змінної не повинно містити пробілів

Змінна primerі PriMerдля Паскаля рівнозначні

Типи даних

Після того, як ми перерахуємо змінні у розділі var, ми повинні вказати їх тип:

  • integer- Цілочисленний тип
  • real- Речовий тип (дрібні числа)
  • string- рядковий тип

Наприклад:

var a, b, c: integer;

де a, b, c – змінні, integer – тип цих змінних. Тобто. змінні (комірки пам'яті) a, b, c можуть містити лише цілі числа.

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

Якщо необхідно, щоб частина змінних була одного типу, частина іншого:

var a, b: integer; з: real;

тобто. змінні a, b- Цілі, а змінна з- Фактичне число (неціле).

Оператор присвоєння

Оператор присвоєння служить присвоєння змінної будь-якого значення.

:= оператор присвоєння

Запис a:=23;читається як «Змінна априсвоєно значення 23 «. Тепер у осередку пам'яті з ім'ям азберігається число 23.

Оператор введення

Існує ще один оператор, за допомогою якого можна записати в змінну якесь значення, але вже за допомогою клавіатури.

readln(a)

Як тільки паскаль виконуватиме команду readln(a),він вимагатиме від нас введення значення з клавіатури, яке запише в змінну, що стоїть у дужках. У нашому випадку - в змінну a.

Математичні операції

+ - Операція додавання

- Операція віднімання

* - Операція множення

/ - Операція поділу

mod- залишок від ділення

div- ціла частина від розподілу

Приклад:

S:=22 mod 5; Після виконання цього коли змінна Sстане рівною 2 .

S:= 22 div 5; Після виконання цього коду змінна Sстане рівною 4.

Оператор виведення

Для виведення значення змінної на екран використовується команда write(a)або writeln(a). Після виконання команди writelnвідбувається перехід на новий рядок, після виконання команди write не відбувається.

Якщо необхідно вивести на екран текст, він полягає в апострофи:

writeln('Мама мила раму');

Також можна вивести на екран текст разом із змінною:

a:=6;
writeln(' Значення змінної а = ‘, a);

На екрані ми побачимо: Значення змінної а=6.

Розглянемо завдання:

За введеними з клавіатури значеннями довжини та ширини знайти площу та периметр прямокутника.

var a,b,S,P:integer; //оголошуємо змінні begin writeln(" Введіть довжину прямокутника"); readln( a); //вводимо довжину writeln(" Введіть ширину прямокутника"); readln( b); //вводимо ширину S:=a*b; //Обчислимо площу прямокутника P:=2*(a+b); //Обчислимо периметр прямокутника writeln(" Площа прямокутника дорівнює ",S); //виводимо на екран writeln(" Периметр прямокутника дорівнює ",P); end.

Професійне середовище розробки для створення програм та програм будь-якого рівня складності. Поєднує в собі класичну простоту Паскаля та всі можливості сучасного середовища розробки.NET, яку використовують професійні розробники у всьому світі. Крім того, мову програмування Паскаль вивчають на шкільному курсі інформатики, даючи учням базові знанняпро операторів та змінних. Таким чином, навчання Паскаль абс дається новачкам краще, ніж освоєння інших мов програмування.

Курс семи практичних відеоуроків ідеально підходить для тих, хто хоче дізнатися, як зробити програму в Pascal ABC, незалежно від рівня підготовки. Кожен урок має свою тему, тому їх можна дивитися як по порядку, так і вибірково, щоб поглибити та розширити свої знання у конкретній галузі.

Уроки Pascal ABC

Представлені у відеокурсі уроки Паскаль АБС засновані на розробці прикладних програм та дають практичні знання. Всі програми, які ви напишіть у процесі проходження відеокурсу, повністю робітники та їх можна використовувати у повсякденному житті – «води» та порожньої теорії в курсі немає.

Освоюємо інтерфейс редактора та пишемо свої перші рядки коду.


Вивчаємо логіку роботи з числами та конструюємо таймер.


Вивчаємо, як мову програмування компілює вихідний код.



Використовуємо Паскаль для знаходження рішення задачі про школярку Анну.


Програмуємо справжній віртуальний музичний синтезатор.


Освоюємо складні математичні функції та створюємо повноцінний інженерний калькулятор.



Створюємо правильну телефонну книгу на основі бази даних.


Урок 1 - Перша програма
Урок 2 - Прості числа
Урок 3 - Компілятори (Частина 1)
Урок 3 - Компілятори (Частина 2)
Урок 4 - Розв'язання шкільного завдання
Урок 5 - Створення піаніно
Урок 6 - Розширений калькулятор (Частина 1)
Урок 6 - Розширений калькулятор (Частина 2)
Урок 7 - Зручна телефонна книга (Частина 1)
Урок 7 - Зручна телефонна книга (Частина 2)
Урок 7 - Зручна телефонна книга (Частина 3)
Урок 7 - Зручна телефонна книга (Частина 4)
Урок 8 – Робота з графікою. Система частинок (Частина 1)
Урок 8 – Робота з графікою. Система частинок (Частина 2)
Урок 8 – Робота з графікою. Система частинок (Частина 3)
Урок 8 – Робота з графікою. Система частинок (Частина 4)

Ця книга – не підручник, а скоріше помічник у освоєнні мови програмування Паскаль, з яким на уроках інформатики знайомляться всі школярі. Вона складається з бесід, присвячених практичним питанням програмування та вирішення завдань. Численні приклади дозволяють краще зрозуміти, як розробити алгоритм, написати власну програму, правильно оформити її текст. Поради та примітки звертають увагу читачів на важливі деталі, дозволяють уникнути підводного каміння, ефективніше писати програми.
Книжку написано шкільними викладачами інформатики, які мають великий досвідбагаторічної практичної роботи.

Що таке програмування? Будь-яке завдання, яке вирішує комп'ютер, записується як послідовності команд. Така послідовність називається програмою. Команди, звичайно, мають бути представлені мовою, зрозумілою комп'ютеру. Одна з таких мов – мова програмування Паскаль. Він розроблений швейцарським професором Ніко-Лаусом Віртом спеціально для навчання студентів програмуванню. До особливостей мови належить і його структурність. Тобто програма легко розбивається на простіші блоки, що не перетинаються, ті, у свою чергу, на ще простіші блоки. Це також полегшує програмування. У 1979 році мова була затверджена як стандартна. Вірт назвав його на честь французького вченого Блеза Паскаля, винахідника лічильної машини. Мова Паскаль проста, логічна і ефективна. Він набув поширення у всьому світі. Наші бесіди побудовані на прикладах програм. Тривалих теоретичних пояснень немає, тому конче необхідно уважно читати коментарі в текстах програм!
Отже, починаємо першу розмову з першої програми на Паскалі;

Зміст
Вступ 7
Подяки 7
Від видавництва 8
ТЕМА 1. Як написати просту програмуна Паскалі 9
Урок 1.1. Виводимо повідомлення на екран дисплея 10
Урок 1.2. Як закласти цю програму на комп'ютер? 11
Етапи створення комп'ютерної програми 12
1. Запуск середовища Паскаль 14
2. Робота у вікні редагування Edit 16
3. Збереження програми у файлі на диску 19
4. Запуск компілятора 20
5. Виконання програми 21
6. Перегляд результатів роботи програми 21
7. Вихід із середовища Паскаль 22
Урок 1.3. Оформлення тексту на екрані 22
Висновки 28
Контрольні питання 28
ТЕМА 2. Як включити в роботу числові дані 30
Урок 2.1. Почнемо з простого: цілі числа 31
Поняття змінної 32
Тип Integer. Оператор присвоєння. Виведення на екран 32
Операції з типом Integer 34
Стандартні функції типу Integer 36
Як видаються змінні цілого типу в пам'яті комп'ютера 38
Урок 2.2. Включаємо в роботу речові числа 39
Опис речового типу даних (Real) 40
Формати запису речових змінних 40
Речові операції 41
Стандартні функції типу Real 41
Запис математичних виразів 43
Як видаються змінні речовинного типу в пам'яті
комп'ютера 45
Урок 2.3. Як поєднати змінні цілого та речового типу 46
Перетворення типів 46
Правила пріоритету у діях, що виконуються 47
Дії надданими різних типів 47
Урок 2.4. Введення та виведення даних 51
Вводимо змінні з клавіатури 52
Гарний висновок на екран 52
Завдання значень змінних датчиком випадкових чисел 55
Урок 2.5. Навіщо потрібні константи у програмі? 57
Висновки 59
Контрольні питання 60
ТЕМА 3. Вчимося працювати із символами 61
Урок 3.1. Як комп'ютер розуміє символи 62
Кодова таблиця ASCII 62
Опис типу Char та стандартні функції 63
Урок 3.2. Тип Char – порядковий тип! 64
Висновки 66
Контрольні питання 67
ТЕМА 4. Джордж Буль та його логіка 68
Урок 4.1. Необхідний ще один тип – логічний! 69
Логічний тип даних (Boolean) 70
Операції відносини 70
Введення-виведення булевських змінних 71
Урок 4.2. Логічні (булівські) операції 71
Логічне множення (кон'юнкція) 72
Логічне складання (диз'юнкція) 72
Виключне АБО (додавання за модулем 2) 73
Логічне заперечення (інверсія) 74
Застосування логічних операційу програмі 74
Пріоритет логічних операцій 76
Висновки 77
Контрольні питання 78
ТЕМА 5. Аналіз ситуації та послідовність виконання команд 79
Урок 5.1. Перевірка умови та розгалуження в алгоритмі 80
Повна та неповна форма оператора if 81
Оформлення програм 84
Урок 5.2. Блоки операторів 85
Урок 5.3. Розгалуження за низкою умов (оператор case) 90
Висновки 94
Контрольні питання 95
ТЕМА 6. Багаторазово повторювані дії 96
Урок 6.1. Оператор- циклу for 97
Оператор for з послідовним збільшенням лічильника 97
Оператор for з послідовним зменшенням лічильника 99
Урок 6.2. Застосування циклів із лічильником 99
Цикл у циклі 100
Трасування 101
Обчислення суми ряду 103
Висновки 107
Контрольні питання 108
ТЕМА 7. Цикли з умовою 109
Урок 7.1. Цикл із передумовою 110
Опис циклу з передумовою 110
Наближене обчислення суми нескінченного ряду 111
Введення числа у вказаний цілий ступінь 114
Урок 7.2. Цикл із постумовою 118
Опис циклу з постумовою 119
Використання циклів repeat та while 119
Відносність вибору операторів while та repeat 123
Висновки 129
Контрольні питання 129
ТЕМА 8. Масиви – структурований тип даних 131
Урок 8.1. Зберігання однотипних даних у вигляді таблиці 132
Основні дії по роботі з масивами 133
Опис масиву на мові Паскаль 133
Заповнення масиву випадковими числами та виведення масиву на екран 134
Створення типу користувача даних 137
Пошук максимального елементу масиву 141
Обчислення суми та кількості елементів масиву із заданими властивостями 146
Урок 8.2. Пошук у масиві 148
Визначення наявності у масиві негативного елемента з використанням прапорця 149
Визначення наявності у масиві негативних елементів шляхом обчислення їх кількості 150
Знаходження номера негативного елемента масиву 152
Урок 8.3. Двовимірні масиви 156
Висновки 158
Контрольні питання 159
ТЕМА 9. Допоміжні алгоритми. Процедури та функції. Структурне програмування 160
Урок 9.1. Конструювання алгоритму «згори донизу» 161
Практичне завдання з використанням допоміжних алгоритмів 162
Урок 9.2. Приклад роботи з функцією: пошук максимального елемента 169
Висновки 171
Контрольні питання 171
ТЕМА 10. Як працювати із символьними рядками 1 72
Урок 10.1. Працюємо з ланцюжками символів: тип String 1 73
Опис строкової змінної 173
Основні дії з рядками 174
Урок 10.2. Деякі функції та процедури Паскаля для роботи з рядками 175
Використання бібліотечних підпрограм роботи з рядками 175
Висновки 177
Контрольні питання 178
ТЕМА 11. Процедури та функції з параметрами 179
Урок 11.1. Прості прикладивикористання підпрограм з параметрами 180
Найпростіші процедури з параметрами 180
Формальні та фактичні параметри 182
Найпростіші функції з параметрами 183
Урок 11.2. Способи передачі параметрів 184
Висновки 187
Контрольні питання 187
ТЕМА 12. Файли: зберігаємо результати роботи до наступного разу 189
Урок 12.1. Як працювати з текстовим файлом 190
Відкриття файлу для читання 190
Відкриття файлу для запису 193
Урок 12.2. Збереження двовимірного масиву чисел в текстовому файлі 196
Збереження числових даних у текстовому файлі 196
Збереження масиву чисел у текстовому файлі 197
Дописування інформації в кінець файлу 201
Висновки 202
Контрольні питання 203
ТЕМА 13. Графічний режим роботи. Модуль Graph 204
Урок 13.1. Включаємо графічний режим роботи 205
Особливості роботи з графікою 205
Перемикання в графічний режим відеоадаптера 206
Урок 13.2. Продовжуємо вивчати можливості модуля Graph 208
Малювання ліній засобами модуля Graph 209
Малювання кіл засобами модуля Graph 210
Висновки 212
Контрольні питання 212
ТЕМА 14. Оператори, що змінюють природний хід програми 213
Урок 14.1. Використання оператора безперечного переходу goto 215
Урок 14.2. Оператори, що змінюють хід виконання циклу 218
Оператор break 2.19
Оператор continue 220
Висновки 220
Контрольні питання 221
Додаток 1. Елементи блок-схем 222
Додаток 2. Домашні завдання 224
Завдання до розділу 2224
Завдання до розділу 4 227
Завдання до розділів 6-7 229
Завдання до розділу 8 236
Алфавітний покажчик 254

Мабуть, немає жодної сучасної людини, яка б не знала мову Паскаль (основи програмування). І це не дивно! Ще в підручнику з інформатики для школярів розписано основні поняття цієї унікальної програми.

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

Історія мови, що вивчається, не така проста: Паскаль зазнав безліч змін, перш ніж школярі побачили її в тому вигляді, в якому її викладають на уроках. Це був перший простий мову (ord pascal) для програмування, що допомагає вирішити безліч практичних завдань минулого століття (1970 рік). Він був розроблений групою вчених.

З розширенням платформ було створено нові версії цієї програми, а Паскаль став класичною мовою програмування.

Нижче розберемося: що таке Паскаль, якими є його основні інструменти. Розглянемо операції та функції програми, її специфічні особливості. На прикладах зрозуміємо, як вона працює. Навчимося писати та працювати мовою Паскаль.

Що таке мова програмування Паскаль

Це є базова високорівнева програма. Вона посідає перше місце у навчальних планах багатьох шкіл та вишів Російської Федерації.

Особливості системи PascalABC.NET

Все пізнається порівняно, тому переваги цієї програми розглянемо у співвідношенні з іншою мовою BASIC.

Отже, що характерно для мови Паскаль і що не підходить для Бейсіка:

  1. По-перше, наявність компілятора, що дозволяє завантажувати Паскаль на будь-які платформи.
  2. По-друге, всі версії програми сумісні між собою.
  3. По-третє, структуровані типи даних допомагають програмісту точно скласти необхідний алгоритм розв'язання практичного завдання, у своїй захищаючи його.
  4. По-четверте, наочність та логічність інтерфейсу програми: всі команди прості та зрозумілі.
  5. По-п'яте, перехід на іншу, більш високу за рівнем мову програмування, досить простий.

Приклади програм на PascalABC.NET

Сума введених цілих чисел

Добуток цілих чисел

Скільки непарних серед n введених

Захист від неправильного введення

Висновок 10 перших ступенів двійки

Знайти суму цифр цілого позитивного числа m

Розкладання числа на прості множники

Паскаль для початківців – основні поняття

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

Робоча область

Який вигляд має робочий простір?

Тепер розглянемо основу: алфавіт та структуру.

Алфавіт Паскаль

Що треба знати? Алфавіт – це набір символів, необхідний під час складання програми.

Що до них відноситься:

  1. Латинські великі, малі літери (А, В, С .... а, b, с).
  2. Арифметичні символи (0, 1, 2…).
  3. Спеціальні знаки (розпинання, дужки, лапки, арифметичні знаки і т. д.).
  4. Неподільні символи (:=, ˃=…).
  5. Службові слова:
  • and – та;
  • array - масив;
  • begin – початок;
  • do – виконати;
  • else – інакше;
  • for – для;
  • if – якщо;
  • of - з;
  • or - або;
  • procedure – процедура;
  • program – програма;
  • repeat – повторювати;
  • then - те;
  • to – до;
  • until - до (= поки);
  • var – змінна;
  • while – поки що.

Варто врахувати:константи, операції нічого не винні носити самі назви, як і службові слова (довжина – будь-яка).

Структура програми

Отже, що ж входить до «ієрархії» цієї програми?

За своєю структурою ця мова ділиться на 3 розділи:

  • назву;
  • дані;
  • дії.

Зверніть увагу:змінні потрібно перераховувати через кому, а потім через «:» вказати їхній тип. Завершити написане ";".

Дії починаються з begin і закінчуються end з точкою.

Структуру можна так:

До речі, оператори між собою поділяються крапкою з комою.

Оператори write, writeln, read, readln

З'ясуємо, як відбувається виведення та введення інформації.

Висновок

Як операторів виведення у цій мові немає, але є спеціальні слова, які допомагають запустити необхідні функції. Це write, writeln.

У чому їхня головна відмінність? При введенні або виведенні наступної інформації після них: у першому випадку наступна інформація виводитиметься на той же рядок, де і написаний оператор. А ось у другому – на наступну.

Введення

Для введення існують також свої слова: read, readln(= readkey).

Вони відрізняються один від одного так само, як і попередні оператори (при виведенні).

Цілий тип даних

Виділяють 3 основні види:

  1. Integer.
  2. Byte.
  3. Longint.

З ними також проводять прості дії:

  • додавання – «+»;
  • віднімання – «-»;
  • множення - "*";
  • розподіл - "div".

Крім того, дозволено проводити відносини та порівняння (більше або дорівнює - ˃ =).

Речові типи даних

До таких змінних відносяться дробові числа (наприклад, число пі). Тут вони називаються real.

Що треба пам'ятати? Щоб запровадити формулу дробового числа, треба замість коми використовувати крапку.Для запису ступенів (х * 10 у) 10 замінюється Е та число має запис:

З ними можна виконувати як найпростіші арифметичні дії, так і складніші:

  • квадратний корінь – sqrt;
  • абсолютна величина – abs;
  • квадратична функція - sqr;
  • синус – sin;
  • косинус – cos;
  • арктангенс - arctan;
  • натуральний логарифм – ln;
  • експонента – exp.

Обробка даних

Крім перерахованих вище функцій (у попередніх 2 пунктах), є й інші:

  • ціла частина числа – int;
  • дрібна частина числа - frac;
  • одержання цілої частини числа – trunc;
  • округлення до цілого – round;
  • перетворення порядкового типу – ord;
  • перетворення коду на символьний тип - chr;
  • визначення попереднього значення величини – pred;
  • визначення наступного значення величини - succ.

Математичні операції

Математичні функції та операції були розглянуті при розборі цілих та речових даних.

Зупинимося на типах констант та змінних. Які вони бувають?

Прості включають підтипи:

  • цілі – integer;
  • логічні – boolean;
  • символьні – char;
  • перераховані;
  • інтервальні;
  • речові.

Рядкові записуються командою string. Посилальні представлені відповідною формою.

Структуровані ділять на:

  • масиви – array;
  • записи – record;
  • множини - set;
  • файл – файл.

До кожного типу характерні свої набори операцій.

Умови

Якщо є альтернативні команди та функції, то за допомогою операторів if, then, else можна записати необхідні команди для вирішення практичного завдання.

Схема представлена ​​малюнку нижче.

Логічні операції

Операції ґрунтуються на істині факту або його брехні.

Виділяють 3 види таких функцій:

  1. Odd – якщо непарне число, то істина (навпаки – брехня).
  2. Eoln - істина на кінці рядка (в іншому місці - брехня).
  3. Eof - істина в кінці файлу (в іншому місці - брехня).

Функції керування програмою

Які ще існують процедури:

  • Inc – збільшення числа;
  • Clrscr – очищення попередніх результатів роботи програми;
  • Uses crt – запуск clscr;
  • Length – повернення довжини рядка;
  • Val – перетворення рядка на число;
  • Pos - знайти в рядку перше перетворення;
  • Assign – зв'язування змінної із файлом;
  • Upcase - Переклад малих літер в великі.

Висновок

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

2-ге вид. – СПб.: 2011. – 320з.

Ця книга – не підручник, а скоріше помічник у освоєнні мови програмування Паскаль, з яким на уроках інформатики знайомляться всі школярі. Вона складається з уроків, присвячених практичним питанням програмування та вирішення завдань. Численні приклади дозволяють краще зрозуміти, як розробити алгоритм, написати власну програму, правильно оформити її текст. Поради та примітки допомагають читачеві звернути увагу на важливі деталі, дозволяючи уникнути підводного каміння та ефективніше писати програми. Книга підготовлена ​​викладачами інформатики у школі, які мають великий досвід багаторічної практичної роботи. До другого видання додано кілька нових розділів, присвячених записам, динамічним змінним, стеку, черзі та спискам. Також висвітлено одну з найскладніших тем у програмуванні – побудову рекурсивних алгоритмів.

Формат: pdf(2011, 2-ге вид., 320с.)

Розмір: 14,5 Мб

Дивитись, скачати: docs.google.com

Зміст
Передмова до другого видання 15
Вступ 16
Від видавництва 16
ТЕМА 1. Як написати просту програму на Паскалі 17
Урок 1.1. Виводимо повідомлення на екран дисплея 18
Урок 1.2. Як закласти цю програму в комп'ютер 19
Етапи створення комп'ютерної програми 20
Урок 1.3. Оформлення тексту на екрані 28
Висновки 34
Контрольні питання 34
ТЕМА 2. Як включити в роботу числові дані 36
Урок 2.1. Почнемо з простого: цілі числа 37
Поняття змінної 38
Тип Integer. Оператор присвоєння. Виведення на екран 38
Операції з типом Integer 40
Стандартні функції типу Integer 42
Як видаються змінні цілого типу
у пам'яті комп'ютера 43
Урок 2.2. Включаємо в роботу речові числа 45
Опис речового типу даних (real) 45
Формати запису речових змінних 46
Речові операції 46
Стандартні функції типу real 47
Запис математичних виразів 48
Як видаються змінні речовинного типу в пам'яті комп'ютера 50
Урок 2.3. Як поєднати змінні цілого та речового типу 51
Перетворення типів 51
Правила пріоритету у діях, що виконуються 52
Дії над даними різних типів 53
Урок 2.4. Введення та виведення даних 56
Вводимо змінні з клавіатури 57
Гарний висновок на екран 57
Завдання значень змінних датчиком випадкових чисел 61
Урок 2.5. Навіщо потрібні константи у програмі? 62
Висновки 64
Контрольні питання 64
ТЕМА 3. Вчимося працювати із символами 66
Урок 3.1. Як комп'ютер розуміє символи 67
Кодова таблиця ASCII 67
Опис типу Char та стандартні функції 68
Урок 3.2. Тип Char – порядковий тип! 70
Висновки 71
Контрольні питання 72
ТЕМА 4. Джордж Буль та його логіка 73
Урок 4.1. Необхідний ще один тип – логічний! 74
Логічний тип даних (Boolean) 75
Операції відносини 75
Введення-виведення булевських змінних 76
Урок 4.2. Логічні (булівські) операції 76
Логічне множення (кон'юнкція) 76
Логічне складання (диз'юнкція) 77
Виключне АБО (додавання за модулем 2) 77
Логічне заперечення (інверсія) 78
Застосування логічних операцій у програмі 78
Пріоритет логічних операцій 80
Висновки 81
Контрольні питання 81
ТЕМА 5. Аналіз ситуації та послідовність виконання команд 82
Урок 5.1. Перевірка умови та розгалуження в алгоритмі 83
Повна та неповна форма оператора if 84
Оформлення програм 86
Урок 5.2. Блоки операторів 88
Урок 5.3. Розгалуження за низкою умов (оператор case) 92
Висновки 96
Контрольні питання 96
ТЕМА 6. Багаторазово повторювані дії 98
Урок 6.1. Оператор циклу for 99
Оператор for із послідовним збільшенням лічильника 100 Оператор for із послідовним зменшенням лічильника 101
Урок 6.2. Застосування циклів із лічильником 101
Цикл у циклі 102
Трасування 103
Обчислення суми ряду 105
Висновки 108
Контрольні питання 109
ТЕМА 7. Цикли з умовою 110
Урок 7.1. Цикл із передумовою 111
Опис циклу з передумовою 111
Наближене обчислення суми нескінченного ряду 112
Зведення числа у вказаний цілий ступінь 115
Урок 7.2. Цикл із постумовою 119
Опис циклу з постумовою 120
Використання циклів repeat та while 120
Відносність вибору операторів while та repeat 123
Висновки 129
Контрольні питання 129
ТЕМА 8. Масиви – структурований тип даних 131
Урок 8.1. Зберігання однотипних даних у вигляді таблиці 132
Основні дії по роботі з масивами 133
Опис масиву на мові Паскаль 133
Заповнення масиву випадковими числами та виведення масиву на екран 134
Створення типу користувача даних 137
Пошук максимального елементу масиву 140
Обчислення суми та кількості алементів масиву із заданими властивостями 144
Урок 8.2. Пошук у масиві 148
Визначення наявності у масиві негативного алементу з використанням прапорця 148
Визначення наявності у масиві негативних алементів шляхом обчислення їх кількості 149
Знаходження номера негативного алементу масиву 150
Урок 8.3. Двовимірні масиви 154
Висновки 156
Контрольні питання 157
ТЕМА 9. Допоміжні алгоритми. Процедури та функції. Структурне програмування 1 58
Урок 9.1. Конструювання алгоритму «згори донизу» 159
Практичне завдання з використанням допоміжних алгоритмів 160
Урок 9.2. Приклад роботи з функцією: Пошук максимального елемента 167
Висновки 168
Контрольні питання 169
ТЕМА 10. Як працювати із символьними рядками 170
Урок 10.1. Працюємо з ланцюжками символів: тип String 171
Опис строкової змінної 171
Основні дії з рядками 172
Урок 10.2. Деякі функції та процедури Паскаля для роботи з рядками 173
Використання бібліотечних підпрограм роботи з рядками 173
Висновки 175
Контрольні питання 175
ТЕМА 11. Процедури та функції з параметрами 176
Урок 11.1. Прості приклади використання підпрограм з параметрами 177
Найпростіші процедури з параметрами 177
Формальні та фактичні параметри 179
Найпростіші функції з параметрами 179
Урок 11.2. Способи передачі параметрів 181
Висновки 183
Контрольні питання 184
ТЕМА 12. Файли: зберігаємо результати роботи до наступного разу 185
Урок 12.1. Як працювати з текстовим файлом 186
Відкриття файлу для читання 186
Відкриття файлу для запису 188
Урок 12.2. Збереження двовимірного масиву чисел у текстовому файлі 192
Збереження числових даних у текстовому файлі 192
Збереження масиву чисел у текстовому файлі 192
Дописування інформації до кінця файлу 196
Висновки 197
Контрольні питання 197
Тема 13. Графічний режим роботи. Модуль Graph 199
Урок 13.1. Включаємо графічний режим роботи 200
Особливості роботи з графікою 200
Перемикання в графічний режим відеоадаптера 201
Урок 13.2. Продовжуємо вивчати можливості модуля Graph 203
Малювання ліній засобами модуля Graph 203
Малювання кіл засобами модуля Graph 205
Висновки 206
Контрольні питання 207
Тема 14. Оператори, що змінюють природний хід програми 208
Урок 14.1. Використання оператора безперечного переходу goto 210
Урок 14.2. Оператори, що змінюють хід виконання циклу 213
Оператор break 213
Оператор continue 214
Висновки 215
Контрольні питання 215
Тема 15. Групуємо дані: записи 216
Урок 15.1. Опис типу даних record 218
Урок 15.2. Коли і як розумно використовувати записи 220
Створення власного типу даних - запис 220
Масив записів 220
Оператор приєднання with 221
Приклад вибору структури даних 223
Записи записів 224
Висновки 225
Контрольні питання та завдання 225
Тема 16. Динамічні змінні 226
Урок 16.1. Виділення пам'яті 227
Урок 16.2. Адреси 229
Урок 16.3. Покажчики 230
Вказівники на окремі змінні 230
Вказівники на блоки змінних 232
Урок 16.4. Динамічне виділення пам'яті 232
New та Dispose 233
Динамічне виділення пам'яті для масивів 235
GetMem та FreeMem 236
Звернення до елементів масиву, створеного динамічно 237
Масив змінної довжини 238
Висновки 241
Контрольні питання 242
Тема 17. Динамічні структури даних. Стек 244
Урок 17.1. Опишемо тип даних 245
Урок 17.2. Створення стеку та основні операції зі стеком 247
Додавання елемента до стек (Push) 248
Вилучення елемента зі стеку (Pop) 251
Перевірка стека на порожнечу (StacklsEmpty) 252
Урок 17.3. Використання стека 253
Програмування стека за допомогою масиву 255
Висновки 256
Контрольні питання та завдання 256
Тема 18. Динамічні структури даних. Черга 258
Урок 18.1. Принцип роботи та опис типу даних 259
Урок 18.2. Основні операції з чергою 261
Додавання елемента до черги (EnQueue) 261
Вилучення елемента з черги (DeQueue) 263
Перевірка черги на порожнечу (QueuelsEmpty) 264
Урок 18.3. Використання черги 264
Програмування черги за допомогою масиву 267
Висновки 269
Контрольні питання 269
Тема 19. Динамічні структури даних. Однонаправлений список 270
Урок 19.1. Опис типу даних та принцип роботи 271
Урок 19.2. Основні операції з однонаправленим списком 272
Послідовний перегляд усіх елементів списку 272
Поміщення елемента до списку 273
Видалення елемента зі списку 275
Урок 19.3. Обробка списків 276
Доцільність використання односпрямованого списку 278
Висновки 280
Контрольні питання 280
Тема 20. Рекурсія 281
Урок 20.1. Опис принципу 282
Урок 20.2. Ханойські вежі 285
Урок 20.3. Структура рекурентної підпрограми 287
Урок 20.4. Приклад рекурентного вирішення нерекурентного завдання 288
Урок 20.5. Приклад рекурентного розв'язання рекурентного завдання 289
Висновки 291
Контрольні питання 291
Додаток 1. Елементи блок-схем 292
Додаток 2. Завдання 295
Integer. Опис Введення. Висновок. Операції 296
Real. Опис Введення. Висновок. Операції та функції 296
Real. Запис та обчислення виразів 297
Char. Опис Введення. Висновок. Функції 298
Boolean. Запис виразів 298
Boolean. Обчислення виразів 299
If. Прості порівняння. Min/max/середній 300
If. Рівняння та нерівності з параметрами 300
For. Перерахування 300
For. Обчислення з лічильником циклу 301
For. Перебір з порівняннями 302
While-Repeat. Пошук 302
While-Repeat. Ряди 303
графіка. Прямі 303
графіка. Кола 304
Масиви. Заповнення, висновок, сума/кількість 305
Масиви. Перестановки 305
Масиви. Пошук 306
Масиви. Перевірки 307
Масиви. Максимуми 307
Підпрограми без параметрів 307
Рядки. Частина I 308
Рядки. Частина II 309
Підпрограми із параметрами. Частина I 309
Підпрограми із параметрами. Частина II 310
Підпрограми із параметрами. Частина III 310
Файли 311
Однонаправлений список 312
Рекурсія 313

Після виходу першого видання книги до нас почали все частіше звертатися наші колеги та учні з проханням доповнити перше видання інформацією про найбільш вивчені та затребувані структури даних. До цього видання ми додали кілька розділів, присвячених записам, динамічним змінним, стеку, черзі та спискам. Також ми постаралися висвітлити одну з найскладніших тем у програмуванні – побудова рекурсивних алгоритмів.
У додатку ми вирішили відмовитися від збірки домашніх завдань з безліччю варіантів на кілька тем. Натомість ми помістили у додаток велику кількість тематичних завдань, організованих блоками по 5-8 завдань. Завдання у кожному блоці розташовані від простого до складного. Ми використовуємо їх на наших уроках для організації практичних занять для закріплення теоретичного матеріалу (одне заняття - один блок).
Автори висловлюють найглибшу вдячність одному з найкращих своїх учнів, доценту кафедри безпеки інформаційних системСПбГУАП, к. т. зв. Євгену Михайловичу Лінському за підтримку, безліч корисних порадта велику допомогу під час роботи над другим виданням книги.



Розповісти друзям