Реферат: Процик Анатолій Петрович Колки 2006 Послідовність викладу матеріалу побудована так, щоб читач з першого ж урок
Програмування. Середовище Turbo Pascal 7.0.
Процик А.П. – Колківська ЗОШ-ліцей
______________________________________________________________________________________________________
Методична розробка
Лінійні програми
Підпрограми
Розгалуження
Цикли
Масиви
Підготував: вчитель інформатики
Колківської ЗОШ-ліцею
Процик Анатолій Петрович
Колки
2006
Послідовність викладу матеріалу побудована так, щоб читач з першого ж уроку приступив до самостійної роботи на комп'ютері. На кожному уроці подаються приклади завдань та програм для безпосередньої роботи на комп’ютері.
Поняття алгоритму, способи їх опису, блок-схеми алгоритмів, поняття програмного об’єкта, математична модель та ряд інших суто теоретичних питань розглядаються нерозривно з програмуванням, нерозривно від практичної роботи на комп’ютері.
На першому та другому уроках виробляються основні навики роботи в середовищі програмування Turbo Pascal 7.0., а вже на третьому складається хоч і найпростіша, але працююча програма. Перераховані вище „сухі” теоретичні питання розглядаються тоді, коли в них виникає потреба для складання програм та розв’язання конкретних задач. Так, для прикладу, поняття змінної розглядається лише після написання програми виведення на екран домашньої адреси, коли виникає потреба в складанні „обчислювальних програм”. Математична модель та блок-схеми алгоритмів розглядаються взагалі наприкінці вивчення розділу „Лінійні програми”, коли розв’язуються перші „складні” задачі, що потребують побудови математичної моделі.
На відміну від традиційного підручника розглядається поняття літерала, як найпростішого програмного об’єкта. Константа та змінна також розглядаються як об’єкти, що будуються на основі літерала. Спираючись на процес інкапсуляції, підпрограма розглядається як закрита самостійна та незалежна капсула, для якої властивий мембранний ефект. Надіюсь, що такий підхід дозволить учням вдальнійшому з меншою затратою зусиль перейти до об’єктивно-орієнтованого програмування.
Основна ціль даної методички може бути сформульована так: навчання створенню закінчених, працюючих програм на мові Pascal з використанням середовища програмування Turbo Pascal 7.0. з мінімальною затратою часу, зацікавлення дітей програмуванням та формування правил хорошого тону при складанні програм.
Навчитися програмувати можна тільки програмуючи, вирішуючи конкретні задачі. Тому, щоб отримати максимальну користь від даного матеріалу, читач повинен працювати з цим матеріалом активно, не займатися просто читанням прикладів, а вводити їх у комп'ютер, експериментувати з ними – вносити зміни до програм.
§ 1: ПОНЯТТЯ ПРОГРАМИ. МОВА ПРОГРАМУВАННЯ СЕРЕДОВИЩЕ ПРОГРАМУВАННЯ TURBO PASCAL 7.0.
^ ПОНЯТТЯ ПРОГРАМИ. СТВОРЕННЯ ПРОГРАМИ.
Програма, що працює на комп'ютері, нерідко ототожнюється з самим комп'ютером, оскільки людина, що використовує програму, "вводить в комп'ютер" початкові дані з клавіатури або за допомогою мишки і "комп'ютер видає результат" на екран (так для прикладу працює програма „Калькулятор”). Насправді перетворення початкових даних, що вводяться з клавіатури, і результат, що виводиться на екран монітора, виконує процесор комп'ютера відповідно до послідовності команд деякої програми, яку попередньо написав і зберіг на комп’ютері програміст. Так, щоб комп'ютер виконав деяку роботу, необхідно розробити цю послідовність команд, або, як кажуть, написати програму. Вираз написати програму відображає тільки один з етапів створення комп'ютерної програми, коли розробник програми дійсно записує команди (інструкції) на папері або за допомогою текстового редактора.
Програмування — це процес створення (розробки) програми. Іншими словами, це процес написання тексту програми в деякому текстовому редакторі або на листку паперу. Текст програми пишеться на деякій мові програмування.
Програма – це опис обчислень.
Обчислення – це дії, здійснення яких доручається деякому виконавцю, який повинен їх розуміти. Програма – це текст.
^ МОВИ ПРОГРАМУВАННЯ.
Знакові системи, що використовуються для опису процесів обчислень, які виконуються на комп’ютері – мови програмування. Процес формування опису – програма. Розрізняють наступні мови програмування:
машинні
асамблерні
макромови
мови високого рівня
мови дуже високого та спеціального рівня
Машинні мови
Знакова система, яка допускає безпосередньо виконувати процесором комп’ютера програм, що написані на цій мові. Одиниця програми в машинній мові – це машинна команда.
Команда складається з двох частин: операційна, адресна. В першій розміщається вказівка процесору, яку дію треба виконати, в другій – над чим треба виконати дану дію, тобто вказується значення. Вказівка значень визначається за допомогою адреси, тобто числа, що описує місце розташування значення в пам’яті комп’ютера.
Для виконання переважної більшості операцій недостатньо однієї команди. Таму команди машинної мови об’єднуються в так звані речення.
Асамблерні мови
Це мова класу, вищого ніж машинна мова. Це також знакова система, ще дуже близька до машинної, але команди асамблерної мови не можуть безпосередньо виконуватися процесором, тому тексти цієї мови перекладають на машинну мову. Процес перетворення здійснюється за допомогою спеціальної програми асемблера і називають асамблюванням.
Мови високого рівня
Це знакова система, команди якої дуже близькі до природної мови. Для виконання процесором команд мови високого рівня повинні бути перетворені у машинну мову. Процес перетворення – трансляція і може відбуватися двома шляхами: інтерпретацією або компіляцією.
Інтерпретація – процес, в якому команди мови високого рівня перетворюються у речення машинної мови і виконуються процесором в міру їх утворення. Тому машинна програма в пам’яті цілком не запам’ятовується. Програма, яка здійснює перетворення називається інтерпретатором.
Компіляція – процес, в якому на мові високого рівня цілком перетворюється у програму машинної мови, а вже потім програма на машинній мові виконується процесором. Тому компільована машина програма на відміну від інтерпретованої запам’ятовується цілком. Програму, що виконує процес компіляції називають компілятором.
Першою мовою високого рівня, що стала концептуальною основою більшості сучасних мов була мова ALGO 58/60.
В даний час в комп'ютерному світі існує безліч мов програмування високого рівня. Найпопулярніші сьогодні – це BASIC, Pascal, С, Ада, JAVA. Яка з мов краща? Відповідь на це питання не так проста. Проте можна з упевненістю сказати, що Pascal краще за інші мови підходить для навчання програмуванню. І це не дивно, адже ця мова була розроблена швейцарським ученим Н. Віртом у тому числі і для цілей навчання програмуванню. В той ж час Pascal — не "учбова", не "іграшкова" мова, вона використовується для розробки складних "професійних" програм, у тому числі працюючих в середовищі Windows.
^ СЕРЕДОВИЩЕ ПРОГРАМУВАННЯ
Середовище програмування - це системи програм, що забезпечують початкове кодування та відлагодження програми. Крім засобів трансляції програм (компілятора для більшості мов), вони містять у собі засоби для роботи з файловою системою та операційною системою (ОС). Такі середовища програмування називають інтегрованими. Інтегроване середовище програмування містить:
редактор для створення програм;
засоби трансляцію програми у машинну мову (компілятор або інтерпретатор)
відладчик, що забезпечує різні режими компіляції (він допомагає програмісту відлагоджувати програму, знаходити та виправляти помилки);
розвинуту бібліотеку підпрограм, модулів, класів, мегамодулів (готових програм, які може використати програміст у своїй програмі).
§2. РОБОТА В СЕРЕДОВИЩІ ПРОГРАМУВАННЯ TURBO PASCAL 7.0
Поширені два середовища програмування мовою Паскаль: Turbo Pascal 7.0 і Borland Pascal для MS-DOS і Windows. Вони призначені для підготовки текстів програм мовою Паскаль та їхнього виконання. Принципи складання програм (окрім роботи з графікою у Windows) для них однакові.
Для входу у середовище треба виконати команду turbo.exe (на шкільних комп’ютерах повний шлях до нього наступний – D:\Turbo\turbo.exe). У верхньому рядку екрана буде розташоване головне меню, а в нижньому — опис деяких функціональних клавіш.
Щоб активізувати (увійти в) головне меню, потрібно натиснути на клавішу F10. У розпорядженні користувача будуть такі пункти меню:
File
— для роботи з файлами;
Edit
— для редагування файлу;
Search
— для відшукання чи заміни заданого фрагмента
тексту;
Run
— для виконання програми;
Compile
— для компіляції програми та створення
exe- файлу;
Debug
— для налагодження програми;
Options
— для конфігурування середовища;
Window
— для конфігурування вікон і роботи з ними;
Help
— для надання допомоги.
Потрібний пункт вибирають стрілками переміщення курсора або мишкою і натискають на клавішу вводу.
Розглянемо деякі команди меню:
1. Створення нового файлу, в якому будемо записувати текст нової програми:
Активізують головне меню (натискають на ^ F10) і пункт File.
Отримують додаткове (спадне) меню. У ньому вибирають команду New (будемо записувати так: F10=>File=>New). Середовище переходить у режим створення нового файлу з назвою NONAME00.PAS. В цьому файлі і набирають текст програми. Для виправлення очевидних помилок уведення користуються традиційними прийомами редагування тексту
2. Запуск програми на виконання
F10=>Run або за допомогою комбінації клавіш Ctrl+F9. Якщо система виявить синтаксичні помилки, то про це буде негайно повідомлено. Курсор буде в рядку, де допущено помилку, або безпосередньо вказуватиме на позицію з помилкою. У верхньому рядку буде повідомлення червоного кольору про зміст помилки, що суттєво полегшує її виправляння. Середовище перебуватиме в режимі редагування і помилку можна буде виправити. Після виправлення помилки необхідно повторно запустити програму на виконання (натискають на Ctrl+F9).
Виправляють наступну помилку у разі потреби і т.д.
Якщо синтаксичних помилок немає, програма буде виконана. Результати можна побачити у вікні результатів, для чого натискають на Alt+F5 або використовують засоби пункту Debug– User Screen. Натиснувши після перегляду результатів на будь-яку клавішу, переходять у режим редагування програми.
3. Покрокове виконання програми
Debug => Watch – виклик вікна Watches, яке відображає значення програмних об’єктів у пам’яті в процесі роботи програми. Дане вікно дає можливість користувачу-програмісту «бачити» що робиться в пам’яті комп’ютера в процесі роботи кожної команди (вказівки) програми.
^ Debug => Add Watch (Ctrl+F7) – додати у вікно Watches ім’я програмного об’єкта. Дана команда дозволяє користувачу-програмісту вибирати програмні об’єкти, значення яких будуть відображатися у вікні Watches
^ Run => Trace into (F7) – виконати наступну вказівку програми. Ця команда забезпечує покрокове виконання програми. Як кожна наступна вказівка змінює пам’ять комп’ютера відображається у вікні Watches
4. Збереження програми у файлі.
Щоб зберегти текст програми у файлі з розширенням pas (а саме таке розширення має програма написана на мові Паскаль), активізують F10=>File=>Save As, якщо файлу дають нове ім'я, або F10=>File=>Save (достатньо натиснути на клавішу F2) для зберігання файлу зі старим іменем.
5. Відкриття програми
Для роботи з програмою, що є на диску, виконують F10 =>File => Open або натискають на клавішу F3. Отримаємо діалогове вікно. За допомогою клавіші Tab переходимо в нижню частину вікна і вибираємо серед імен файлів потрібний файл, натискаємо на клавішу вводу. Текст програми буде занесено у вікно редагування.
6. Завершення роботи в середовищі програмування.
Для закінчення сеансу роботи і виходу з середовища потрібно виконати F10=>File=»Exit або натиснути на клавіші Alt+x.
^ ПРАКТИЧНА РОБОТА
Запустіть середовище програмування Turbo Pascal 7.0 (можна скористатися ярликом на Робочому столі).
Відкрийте меню File (F10 – Enter)
Ознайомтеся з командами меню File (New, Save, Save As, Open, Exit). Вивчіть призначення цих команд.
Відкрийте файл „001.pas”- (File – Open)
Перегляньте текст програми (Увага!!! Ні в якому разі не змінюйте текст програми, бо програма не запуститься на виконання)
Запустіть програму на виконання (Run – Run або Ctrl+F9).
Перегляньте результат роботи програми (Debug – User Screen або Alt+F5)
Перепишіть результати роботи програми „001.pas” в зошит.
Поверніться у вікно тексту програми (нажміть будь-яку клавішу).
Командою Debug => Watch відобразіть вікно Watches
Командою Debug => Add Watch (Ctrl+F7) додати у вікно Watches імена таких програмних об’єктів: a, b, c.
Командою Debug => Watch (F7) виконайте програму покроково. При цьому у вікні Watches спостерігайте як змінюються значення програмних об’єктів: a, b, c.
Збережіть програму як копію (File - Save As) у вашій папці під назвою „Proba.pas”
Додаткове завдання Повторіть пункти 4 – 13 для файлів „0011.pas” „0012.pas” та „0013.pas”
§3: СТРУКТУРА НАЙПРОСТІШОЇ ПРОГРАМИ НАПИСАНОЇ НА МОВІ ПРОГРАМУВАННЯ TURBO PASCAL 7.0. ІНСТРУКЦІЇ WRITE і WRITELN.
Структура найпростішої програми
Текст програми на мові програмування Pascal складається з кількох розділів (блоків). Розглянемо основний розділ – розділ інструкцій (вказівок). Розділ інструкцій (або вказівок) починається із слова BEGIN і закінчується словом END, за яким слідує символ "крапка". В розділі інструкцій знаходяться інструкції (вказівки), що виконуються. В кінці кожної інструкції ставиться символ "крапка з комою". Звичайно кожну інструкцію пишуть на окремому рядку.
Наведена нижче програма виводить на екран повідомлення: „Мене звати: Петренко Петро” (наберіть дану програму, збережіть її та запустіть на виконання. Перегляньте результат її роботи).
BEGIN
WRITE('Мене звати: ');
WRITELN('Петренко Петро.');
END.
Вона починається службовим словом BEGIN, а закінчується END. Після слова END (в кінці програми) ставиться символ „крапка”. Між словами BEGIN та END пишеться вказівки програми WRITE('Мене звати: ') та WRITELN('Петренко Петро.'), після кожної з яких стоїть символ „крапка з комою”.
Для полегшення розуміння тексту програми, в текст можуть включатися коментарі — будь-який текст, ув'язнений у фігурні дужки.{Цей текст є коментарем}. Коментарі звичайно розташовують в будь-якому місті програми. Коментар може займати декілька рядків тексту програми. Коментар не впливає на роботу програми – все що записано у фігурних дужках не компілюється.
Змініть набрану вами програму до наступного виду:
BEGIN
{Дана програма нічого не обчислює}
WRITE('Мене звати: ');
WRITELN('Петренко Петро.');
END.
Запустіть її на виконання та переконайтеся, що результат роботи програми не змінився. Текс «Дана програма нічого не обчислює» не компілюється.
Інструкції WRITE і WRITELN
Інструкція WRITE призначена для виведення на екран монітора повідомлень і значень змінних. Виведення змінних ми розглянемо пізніше. В нашому прикладі програма виводить два повідомлення: „Мене звати:” та „Петренко Петро”. Зверніть увагу на правила виведення повідомлень: В дужках після слова WRITE або WRITELN записується повідомлення, яке береться в апострофи.
^ Відмінність між інструкціями WRITE і WRITELN.
WRITELN відрізняється від WRITE лише тим, що після виведення повідомлення курсор переводиться на початок наступного рядка
Змініть в набраній вами програмі інструкцію WRITE('Мене звати: ') на WRITELN('Мене звати: '):
BEGIN
{Дана програма нічого не обчислює}
WRITELN('Мене звати: ');
WRITELN('Петренко Петро.');
END.
Запустіть її на виконання та переконайтеся, що наступне повідомлення „Петренко Петро” виводиться з нового рядка.
^ ПРАКТИЧНА РОБОТА
Запустіть середовище програмування Turbo Pascal 7.0
Напишіть програму, яка виводила б на екран монітора вашу домашню адресу в такому вигляді:
Мене зовуть: Петренко Петро
Моя адреса:
Волинська обл..
Маневицький район
Смт. Колки
Вул. Романівська, 11
Зауваження. Вкажіть своє прізвище та свою домашню адресу
Збережіть програму у файлі „Adresa.pas” у вашій папці.
Додаткове завдання.
Змініть текст написаної вами щойно програми так, щоб результат роботи програми був наступним:
МЕНЕ ЗОВУТЬ: Петренко Петро
^ МОЯ АДРЕСА:
********************************
Волинська обл..
Маневицький район
Смт. Колки
Вул. Романівська, 11
*******************************
§4. ПРЕДСТАВЛЕННЯ ЗНАЧЕНЬ У КОМП’ЮТЕРІ.
Написана на минулому занятті наша перша програма виводить на екран деякий текст. При цьому вона ніяких даних (значень) не обробляє, тоді як основне «покликання» довільної програми – це обробка значень. Настав час розібратися як саме значення представляються у комп’ютері.
Розрізняють числові значення (наприклад, 5, 12.5,…) та символьні значення (наприклад, ‘а’, ‘@’, ‘5’).
Існують ще логічні значення. Але представлення логічних значень ми розглянемо пізніше.
Розрізняють десяткове, двійкове, шістнадцяткове, символьне представлення та представлення з плаваючою крапкою.
^ Десяткове представлення
З десятковим представленням ми користуємося у повсякденному житті. Так число «п’ять» ми записуємо у десятковому представленні, а саме – 5.
Для десяткового представлення використовується 10 різних символів, а саме цифр (0…9) для запису довільного числа.
Наприклад,
8735 = 8000 + 700 + 30 + 5 = 8·103 + 7·102 + 3·101 + 5·100
87,35 = 80 + 7 + 0,3 + 0,05 = 8·101 + 7·100 + 3·10-1 + 5·10-2
Хоча ми і будемо записувати числа в програмі у десятковому представленні (бо ми до такого представлення звикли), але варто пам’ятати, що компілятор усі значення переводить у двійкове представлення. Усі числа в пам’яті комп’ютера зберігаються у двійковому представленні.
^ Двійкове представлення
В двійковому представленні записуються біти цілих чисел.
Для двійкового представлення використовується 2 символи, а саме цифри 0 та 1 для запису довільного числа.
Так байт для числа «п’ять» має вигляд: 00000101
розряд
7
6
5
4
3
2
1
0
біти
0
0
0
0
0
1
0
1
= 0·27 + 0·26 + 0·25 + 0·24 + 0·23 + 1·22 + 0·21 + 1·20 = 5 (десяткове представлення)
Десяткове предст.
Двійкове предст
Десяткове предст.
Двійкове предст
1
00000001
7
00000111
2
00000010
8
00001000
3
00000011
9
00001001
4
00000100
10
00001010
5
000000101
……….
…….
6
000000110
255
11111111
Перетворимо число 5 з десяткового представлення у двійкове. Для цього необхідно справа від числа 5 записати остачу від ділення на два, а саме 1. Цілу частину від ділення числа 5 на 2 (а саме число 2) записуємо під числом 5. Цей процес продовжуємо доти, поки зліва не отримаємо 0.
5
1
Нульвий розряд
2
0
Перший розряд
1
1
Другий розряд
0
5(10) = 00000101(2)
^ Шістнадцяткове представлення.
Використовується для представлення адрес, а саме адрес команд та значень у пам’яті. Використовується 16 різних символів: 0…9, A, B, C, D, E, F для запису довільного числа.
Наприклад,
число «п’ятнадцять»: у десятковому представленні – 15
у шіснадцятковому представленні - F
^ Представлення символьних значень
Для представлення символьних значень використовується 1 байт (у відповідності з таблицею ASCII). Таблиця ASCII складається з 255 символів. Код довільного символу лежить в межах 0..255. Для кодування 1 символу достатньо 1 байта (8 біт).
Перші 127 символів таблиці ASCII
0- | 16-► | 32- | 48-0 | 64-@ | 80-P | 96-` | 112-p |
1-☺ | 17-◄ | 33-! | 49-1 | 65-A | 81-Q | 97-a | 113-q |
2-☻ | 18-↕ | 34-" | 50-2 | 66-B | 82-R | 98-b | 114-r |
Зауваження!
З 7 по 13 символи – це коди невидимих символів (Esc, Enter, пробіл, тощо)
128…159 – буква А…Я
160…175 – букви а…п
224…239 – букви р…я
3-♥ | 19-‼ | 35-# | 51-3 | 67-C | 83-S | 99-c | 115-s |
4-♦ | 20-¶ | 36-$ | 52-4 | 68-D | 84-T | 100-d | 116-t |
5-♣ | 21-§ | 37-% | 53-5 | 69-E | 85-U | 101-e | 117-u |
6-♠ | 22-▬ | 38-& | 54-6 | 70-F | 86-V | 102-f | 118-v |
7- | 23-↨ | 39-' | 55-7 | 71-G | 87-W | 103-g | 119-w |
8- | 24-↑ | 40-( | 56-8 | 72-H | 88-X | 104-h | 120-x |
9- | 25-↓ | 41-) | 57-9 | 73-I | 89-Y | 105-i | 121-y |
10- | 26- | 42-* | 58-: | 74-J | 90-Z | 106-j | 122-z |
11- | 27-← | 43-+ | 59-; | 75-K | 91-[ | 107-k | 123-{ |
12- | 28-∟ | 44-, | 60-< | 76-L | 92-\ | 108-l | 124-| |
13- | 29-↔ | 45-- | 61-= | 77-M | 93-] | 109-m | 125-} |
14-♫ | 30-▲ | 46-. | 62-> | 78-N | 94-^ | 110-n | 126-~ |
15-☼ | 31-▼ | 47-/ | 63-? | 79-O | 95-_ | 111-o | 127-⌂ |
Представлення чисел з плаваючою крапкою
Число 0.0028 можна представити:
.28Е-2 (математичний запис 0.28·10-2) або
2.8Е-3 (математичний запис 2.8·10-3) або
28.0Е-4 (математичний запис 28·10-4) або
.0028Е0 (математичний запис 0.0028·100)
Розрізняють нормалізоване та ненормалізоване представлення.
Представлення f нормалізоване, якщо:
Для числа 0.0028
.28Е-2 – нормалізоване представлення
2.8Е-3
28.0Е-4 - ненормалізовані представлення
.0028Е0
Усі дійсні значення в пам’яті комп’ютера зберігаються та обробляються в нормалізованому представлення з плаваючою крапкою. Це пов’язано з тим, що деяке дійсне число в звичному для нас представленні з фіксованою крапкою обробляється набагато повільніше ніж це число у представленні з плаваючою крапкою.
Забезпечує обробку дійсних чисел з плаваючою крапкою так званий співпроцесор.
Варто також пам'ятати, що у випадку представлення чисел з крапкою, що плаває операції множення та ділення мають незначну похибку, а віднімання та додавання – значну похибку.
§5: НАЙПРОСТІШІ ПРОГРАМНІ ОБ’ЄКТИ: ЛІТЕРАЛ, КОНСТАНТА, ЗМІННА.
^ СТРУКТУРА ПРОГРАМИ В ЗАГАЛЬНОМУ ВИПАДКУ.
Загальні поняття.
Будь-який програмний об’єкт складається з двох частин: з позначення (зображення) та значення (вмісту)
Позначення програмних об’єктів розташовані в тексті програми. Це зовнішні частини програмних об’єктів. Значення розташоване в пам'яті і входить до складу внутрішньої конструкції програмних об’єктів. Коли об’єкт створюється, тоді по позначенні будується значення об’єкта. Коли об’єкт використовується, тоді по позначенні здійснюється доступ до значення об’єкта.
Літерал – найпростіший програмний об’єкт. Значення та позначення літералу збігаються.
Приклади літералів:
5 – його значення 0101 (тобто «п’ять» у двійковому представленні)
‘а’ – його значення 0001100001 (код в таблиці ASCII. 0001100001 в десятковому представленні 97).
Використовують літерали в програмі без попереднього їх опису. Значення літералів відповідає його позначенню.
Наприклад
^ BEGIN
writeln(5);
END.
на екрані буде число 5.
BEGIN
writeln(‘а’);
END.
на екрані буде символ а.
Зверніть увагу символьний літерал береться в апострофи.
Константа – програмний об’єкт, який який також має позначення (ім’я) та значення. Значенням константи є літерал.
Для створення константи в програмі використовується службове слово const.
Const відкриває блок опису констант. Блок опису констант як правило знаходиться на початку програми.
Наприклад,
Const
A = 5;
BEGIN
writeln(A);
END.
на екрані буде число 5.
Const
A = ‘С’;
BEGIN
writeln(A);
END.
на екрані буде символ С.
Значення констант визначаєть по їх опису у блоці опису констант.
Використання констант в програмі доцільно по двом причинам:
По-перше, коли літерал з однаковим значенням використовуються більше одного разу (це може бути наприклад число «пі»).
По-друге, використовувані для констант позначення, що відповідають логічному змісту програми покращують розуміння програми.
Змінна – програмний об’єкт, значення якого не можна визначити по позначенню як у літералу, чи по опису, як у константи.
Конструкція змінна, як літерал та константа складається з позначення (імені) та значення (вмісту). Ім'я змінної в свою чергу складається з двох частин: позначення імені (ідентифікатор) та посилання . Посилання зберігає інформацію про те, де розташоване значення-вміст змінної (наприклад, 5). Крім адреси посилання містить і кількість пам’яті, що займає значення змінної. Змінна, як і константа має бути попередньо описана. Як бачимо зі схеми на відміну від літерала та константи для змінної зв’язок її позначення зі значенням не прямий. Позначення напряму зв’язане з посиланням, тобто адресою деякої комірки пам’яті, а що в цій комірці позначення «не знає». Така конструкція дає можливість змінювати значення змінної. Адже пам’ять відведену під значення змінної можна витерати та заповнювати іншим значенням. При цьому ім’я змінної не міняється.
О
Наприклад
const …
var
A : integer;
BEGIN
writeln(A);
END.
на екрані буде число 0.
пис змінної здійснюється в окремому блоці, який слідує за блоком опису констант. Блок опису змінних починається службовим словом var. У блоці var вказується ім’я змінної (у прикладі змінна має ім’я А(ідентифікатор), після ідентифікатора ставиться двокрапка (:), а далі її тип (у нашому прикладі – integer).
^ Розберемося як працює наша програма.
На початку програми (як тільки компілятор прочитає слово Begin) автоматично виконується операція генератор, яка використовуючи опис змінної (у прикладі A : integer) захоплює пам'ять для збереження значення змінної (у наведеному прикладі у блоці var слово integer означає що під змінну необхідно відвести 2 байти пам’яті для збереження лише цілих значень), а відповідна адреса розміщення значення розміщується в посиланні імені змінної. Зв'язок між ім'ям і ділянкою пам’яті для збереження значення (вмістом змінної), який встановлено генератором залишається постійним поки існує ця змінна.
Integer – це один із стандартних типів. У мові Паскаль існує чимало стандартних типів. Але крім стандартних типів, існують типи, що визначаються (створюються) програмістом. Визначається власний тип в окремому блоці, який стоїть між блоками const та var. Блок опису типів починається зі службового слова type.
const {блок опису констант}
type {блок опису типів}
var {блок опису змінних}
BEGIN
{основна програма}
END.
^ СТРУКТУРА ПРОГРАМИ.
Слід зауважити, що крім чотирьох блоків: опису констант, змінних, типів та основної програми програма на Паскалі може містити ще блок опису міток та блок описання підпрограм. Але використання в програмі міток небажане, а з блоком опису підпрограм ми познайомимося пізніше.
§6. ТИПИ ЗМІННОЇ. ОПИС ЗМІННОЇ
Як зазначалося на минулому занятті кожна змінна, використовувана в програмі, повинна мати ім'я. Як імена змінних можна використовувати послідовність букв латинського алфавіту і цифр, причому першим символом повинна бути буква. Пропуск в імені змінних використовувати не можна. Система програмування Turbo Pascal не розрізняє прописні і рядкові букви, тому імена SUMMA, Summa і summa позначають одну і ту саму змінну.
Бажано, щоб ім'я змінних було логічно пов'язано з призначенням змінних. Наприклад, якщо змінні призначені для зберігання коефіцієнтів квадратного рівняння, записаного у вигляді АХ2+ВХ+С=0, то цілком логічно змінним коефіцієнтам при степенях присвоїти імена А, В і С; змінним, призначеним для зберігання значень коренів цього рівняння — імена XI і Х2. Якщо в програмі є змінні, призначені, наприклад, для зберігань суми покупки і величини знижки, то цим змінним можна присвоїти імена TotalSumm і Discount або ObSumma і Skidka.
Приклади
Нижче подано список змінних, необхідних для програми обчислення:
а) площі прямокутника;
A, B – сторони прямокутника
S – площа прямокутника
б) об'єму паралелепіпеда;
A, B, C – ребра паралелепіпеда, що виходять з однієї вершини
V – об’єм паралелепіпеда г) коренів квадратного рівняння
в) об'єму кулі; a,b,c – коефіцієнти при степенях
R – радіус кулі D – проміжна змінна для збереження дискримінанта
V – об’єм кулі Х1, Х2 – корені рівняння
Основні типи змінних
Як вже зазначалося на минулому занятті, створюючи змінну, програміст повинен вказати її тип, і тим самим визначити, для зберігання яких даних вона призначена (відвести ділянку пам’яті для збереження значень змінної).
В Pascal існують чотири основні типи даних:
INTEGER (цілий) – займає 2 байти пам’яті;
REAL (дійсний) – займає 6 байт пам’яті;
CHAR (символьний) – займає 1 байт пам’яті;
BOOLEAN (логічний) – займає 1 байт пам’яті.
Значенням змінної типу ^ INTEGER може бути позитивне або негативне ціле число, а також нуль. Діапазон значень змінних типу INTEGER від -32768 до 32767. Під змінну INTEGER відводиться 2 байти пам’яті.
Змінні типу REAL використовуються для зберігання чисел з дробовою частиною. ^ REAL – займає 6 байт пам’яті
Опис змінних
В програмах на мові Pascal кожна змінна перед використанням повинна бути описана (тобто створена). За допомогою опису встановлюється не тільки факт існування змінної, але і задається її тип, тим самим визначається діапазон допустимих значень.
В тексті програми змінні описуються в окремому блоці, який починається службовим словом VAR. Цей блок розміщається перед блоком вказівок ^ BEGIN … END. Опис кожної змінної, як правило, поміщають на окремому рядку. Після імені змінної через двокрапку вказується тип змінної, потім ставиться символ "крапка з комою".
Приклади:
VAR
а:real;
b:real;
і:integer;
^ BEGIN
…
END.
В наведеному прикладі оголошено дві змінні типу REAL і одна змінна типу INTEGER. Якщо в програмі декілька змінних одного типу, то можна через кому перерахувати імена змінних, що відносяться до одного типу, і після імені останньої змінної через двокрапку вказати тип.
Приклад:
VAR
а, b,с: integer;
d,xl, х2:real;
BEGIN
…
END.
Розглянемо конкретний приклад. Нехай нам необхідно скласти програму розв’язання квадратного рівняння виду АХ2+ВХ+С=0 з цілими коефіцієнтами (А, В, С – цілі).
Для розв’язання рівняння (математичного) необхідно знайти дискримінант: D = B2 - 4AC. Очевидно D буде також ціле (бо B2 ціле так, як B ціле за умовою, 4AC теж ціле так, як А та С цілі за умовою).
Запам’ятайте!!! Якщо деяка змінна визначається через інші цілі змінні між якими стоять лише операції додавання, віднімання та(або) множення, то така змінна завжди буде цілою.
Корені рівняння шукаються за формулою:
Очевидно Х1 та Х2 не будуть цілими, оскільки у виразі присутні операції ділення та добування кореня квадратного.
Запам’ятайте!!! Якщо у виразі присутня хоча б одна з о^ Команди роботи з буферу обміну
Операції з Буфером обміну виконуються за допомогою меню Edit. У цьому меню присутні команди Cut (Вирізати), Copy (Копіювати), Paste (Вставити).
Виділення фрагмента тексту
Перед тим, як перемістити, скопіювати або видалити фрагмент тексту, необхідно його виділити за допомогою клавіатури або миші.
^ Щоб виділити фрагмент тексту за допомогою клавіатури, необхідно:
Використовуючи клавіші переміщення курсора, встановити курсор на символ з якого починається фрагмент.
Натиснути клавішу і утримуючи її, і, використовуючи клавіші переміщення курсора помістити курсор на останній символ фрагмента.
Відпустити клавішу
Щоб виділити фрагмент тексту за допомогою миші, необхідно:
Переміщаючи мишу, встановити покажчик миші на символ, з якого починается фрагмент.
Натиснути ліву кнопку миші, і утримуючи її, помістити покажчик миші на останній символ фрагмента.
Відпустити кнопку миші.
На екрані виділений фрагмент виділяється кольором: як правило, колір символів і фону виділеного фрагмента інверсні по відношенню до кольорів невиділеного фрагмента.
Переміщення фрагмента тексту
Щоб перемістити фрагмент тексту, необхідно:
Виділити фрагмент тексту.
Виконати команду Cut (Вирізати) меню Edit (Правка). Виділений фрагмент тексту буде видалений з екрану і поміщений у внутрішній буфер редактора.
Помістити текстовий курсор за тим символом тексту, після якого потрібно помістити виділений фрагмент тексту. Це можна зробити, переміщаючи курсор за допомогою клавіш переміщення курсора, або помістити покажчик миші в потрібне місце тексту і клацнути лівою кнопкою миші.
Виконати команду Paste (Вставити) меню Edit (Правка).
Копіювання фрагмента тексту
Щоб скопіювати фрагмент тексту в інше місце цього ж тексту, необхідно:
Виділити фрагмент тексту.
Виконати команду Copy (Копіювати) меню Edit (Правка). Виділений фрагмент тексту буде поміщений у буфер обміну (з екрану фрагмент не виддаляється).
Помістити текстовий курсор за тим символом тексту, після якого потрібно помістити копію виділеного фрагмента тексту. Це можна зробити, переміщуючи курсор за допомогою клавіш переміщення курсора, або помістити вказівник миші в потрібне місце тексту і клацнути лівою кнопкою миші.
Виконати команду ^ Paste (Вставити) меню Edit (Правка).
Видалення фрагмента тексту
Щоб видалити фрагмент тексту, необхідно:
1 Виділити фрагмент тексту.
2. Виконати команду ^ Clear (Очистити) меню Edit (Правка). Виділений фрагмент тексту буде видалений з екрану.
Особливо ефективне для роботи з буфером використання сполучень клавіш („гарячих” клавіш)
“Гарячі” клавіші для роботи з буфером обміну: Ctrl+Insert – копіювати, Shift +Del – вирізати,
Shift + Insert – вставити
Використання буферу обміну для роботи з кількома вікнами.
В середовищі програмування Turbo Pascal 7.0. існує можливість працювати одночасно з багатьма вікнами Усі команди для роботи з вікнами містяться в меню Window.
^ Перемикання між вікнами: Виконайте команду Window – List… (або комбінацію клавіш Alt+0). Відкриється діалогове вікно Window List в якому буде відображатися список всіх відкритих вікон. Виберіть потрібне вікно та натисніть Ok.
^ ПРАКТИЧНА РОБОТА
Запустіть середовище програмування.
Відкрийте файл діалогової програми „006.pas”.
Створіть новий файл.
Перейдіть до програми „006.pas”. Запустіть її на виконання. Проаналізуйте текст програми.
Перейдіть у вікно створеного щойно вами файлу.
Створіть свою власну діалогову програму (для набору використовуйте буфер обміну).
Збережіть її в своїй папці під назвою „dialog.pas”.
§10: СКЛАДАННЯ ЛІНІЙНИХ ПРОГРАМ. ЕТАПИ РОЗВ’ЯЗАННЯ ЗАДАЧ НА КОМП’ЮТЕРІ. МАТЕМАТИЧНА МОДЕЛЬ. ПОНЯТТЯ АЛГОРИТМУ. ЗАПИС АЛГОРИТМУ У ВИГЛЯДІ БЛОК-СХЕМ.
До сьогодні ми приступали до складання програми відразу після аналізу умови задачі. Сьогодні ми розглянемо як „правильно” розв’язувати складні логічні задачі.
^ ЕТАПИ РОЗВ'ЯЗАННЯ ЗАДАЧ НА КОМП'ЮТЕРІ
Перш ніж одержати очікуваний результат роботи програми на комп'ютері, необхідно виконати досить багато клопіткої підготовчої роботи.
^ 1. Етап постановки задачі.
Розв'язування будь-якої задачі починається з її постановки, викладеної мовою чітко визначених математичних понять. На першому кроці необхідно добре уявити, в чому саме полягає дана задача, які необхідні початкові дані, яку інформацію вважати результатами розв'язання.
^ 2. Етап побудови математичної моделі.
Побудова математичної моделі алгоритму — дуже відповідальний етап. Не завжди умова сформульованої задачі містить в собі готову математичну формулу, яку можна застосувати для розв’язання задачі, не завжди розв'язок задачі вдається одержати в явному вигляді, що зв'язує вхідні дані та результат. Для цього створюється інформаційна математична модель об'єкта, що вивчається. Вибір виду моделі залежить від інформаційної сутності об'єкта, а не від його фізичної природи. Тоб
еще рефераты
Еще работы по разное
Реферат по разное
Новгородский Региональный Центр Развития Образования Выпускная работа слушателя курсов «Применение икт в образовательном процессе» урок
17 Сентября 2013
Реферат по разное
Урока для 2 класса на тему: «В серцi нiжну I погiдну збережу я мову рiдну. М. Хоросницька Всердце нежном и родном сохраню язык родной»
17 Сентября 2013
Реферат по разное
Урок Первобытные земледельцы и скотоводы. Возникновение земледелия и скотоводства
17 Сентября 2013
Реферат по разное
Осипова Мария Викторовна, моу сош №9, г. Ковров Владимирская область урок
17 Сентября 2013