Скачать презентацию 2 ОСНОВИ ПРОГРАМУВАННЯ 2 1 ВИЗНАЧЕННЯ МОВИ ПРОГРАМУВАННЯ Скачать презентацию 2 ОСНОВИ ПРОГРАМУВАННЯ 2 1 ВИЗНАЧЕННЯ МОВИ ПРОГРАМУВАННЯ

L2.ppt

  • Количество слайдов: 37

2. ОСНОВИ ПРОГРАМУВАННЯ 2. 1. ВИЗНАЧЕННЯ МОВИ ПРОГРАМУВАННЯ 2. 2. ОСНОВНІ ПОНЯТТЯ АЛГОРИТМІЧНОЇ МОВИ 2. ОСНОВИ ПРОГРАМУВАННЯ 2. 1. ВИЗНАЧЕННЯ МОВИ ПРОГРАМУВАННЯ 2. 2. ОСНОВНІ ПОНЯТТЯ АЛГОРИТМІЧНОЇ МОВИ 2. 2. 1. Склад мови 2. 2. 2. Основні символи алгоритмічної мови PASCAL 2. 2. 3. Конструкції мови Паскаль 2. 2. 3. 1. Числа 2. 3. СТРУКТУРА ПРОГРАМИ 2. 3. 1. Розділ описів 2. 3. 1. 1. Константи 2. 3. 1. 2. Змінні 2. 3. 2. Розділ операторів 2. 4. ТИПИ ДАНИХ 2. 4. 1. Цілі типи 2. 4. 2. Дійсні типи 2. 4. 3. Логічні типи (Boolean) 2. 4. 4. Символьні типи (Char) 2. 5. ВИРАЗИ 2. 5. 1. Арифметичні вирази 2. 5. 2. Логічні вирази

2. 1. ВИЗНАЧЕННЯ МОВИ ПРОГРАМУВАННЯ Мова програмування складається з чотирьох структурних елементів: - алфавіт 2. 1. ВИЗНАЧЕННЯ МОВИ ПРОГРАМУВАННЯ Мова програмування складається з чотирьох структурних елементів: - алфавіт мови всі символи мови; - синтаксис мови сукупність всіх правил побудови допустимих структур, утворених із символів алфавіту (правила утворення слів); - семантичні пояснення правила побудови та опису допустимих у мові виразів, тобто груп слів, зв’язаних між собою; - граматичні форми правила побудови операторів, їх типи, та зв’язки між ними.

Алгоритмічні мови поділяються на: - машинно-орієнтовані - орієнтація на апаратні особливості комп’ютера (Асемблер); - Алгоритмічні мови поділяються на: - машинно-орієнтовані - орієнтація на апаратні особливості комп’ютера (Асемблер); - процедурно-орієнтовані - використання набору процедур для організації обчислювального процесу (Pascal, Basic, Fox. Pro); - проблемно-орієнтовані - орієнтація на спеціальні проблеми (GPSS – для моделювання виробничих процесів); - об’єктно-орієнтовані - орієнтація на класи об’єктів при програмуванні (С++, Visual Basic, Delphi, Visual Fox. Pro і ін. ).

Вимоги до мов програмування До мов програмування надаються дві основні вимоги – універсальності й Вимоги до мов програмування До мов програмування надаються дві основні вимоги – універсальності й ефективності. Універсальність характеризує здатність мови описувати велику кількість об’єктів (алгоритмів). Ефективність оцінюється витратами ресурсів (машинного часу і пам’яті) при реалізації програм.

2. 2. ОСНОВНІ ПОНЯТТЯ АЛГОРИТМІЧНОЇ МОВИ 2. 2. 1. Склад мови Звичайна розмовна мова 2. 2. ОСНОВНІ ПОНЯТТЯ АЛГОРИТМІЧНОЇ МОВИ 2. 2. 1. Склад мови Звичайна розмовна мова складається з чотирьох основних елементів: символів, словосполучень і речень. Алгоритмічна мова має подібні елементи, які складають ієрархічну структуру : - Символи це основні неподільні знаки, у термінах яких пишуться всі тексти. - Елементарні конструкції (слова) це мінімальні одиниці мови, що мають самостійний зміст і утворюються з послідовності символів. - Вирази (словосполучення) утворюються з послідовності елементарних конструкцій і символів. Вони задають правила обчислення деяких значень. - Оператори (речення) – це послідовність виразів, елементарних конструкцій і символів, яка задає повний опис деякої дії, що необхідно виконати. .

2. 2. 2. Основні символи алгоритмічної мови PASCAL • 1) 26 латинських рядкових і 2. 2. 2. Основні символи алгоритмічної мови PASCAL • 1) 26 латинських рядкових і 26 латинських прописних букв: • • • ABCDEFGHІJKLMNOPQRSTUVWXYZ a b c d e f g h і j k l m n o p q r s t u v w x y z; 2) _ підкреслення та проміжок; 3) 10 цифр: 0 1 2 3 4 5 6 7 8 9; 4) знаки операцій: + - * / = <> < > <= >= : = @; 5) обмежники: . , ' ( ) [ ] (. . ) { } (* *). . : ; 6) специфікатори: ^ # $; 7) службові (зарезервовані) слова: AND NAME ARRAY FІLE FOR THEN NOT TO BEGІN FUNCTІON TYPE GOTO OF CONST ІF OR VAR DO WHІLE WІTH ELSE END

2. 2. 3. Конструкції мови Паскаль Елементарні конструкції мови Паскаль, містять у собі імена, 2. 2. 3. Конструкції мови Паскаль Елементарні конструкції мови Паскаль, містять у собі імена, числа і рядки, їх ще називають елементами мови - константи, мітки, типи, змінні, процедури, функції, модулі, об'єкти. • Ім'я (ідентифікатор) - це послідовність букв і цифр, що починається з букви. В іменах може використовуватися символ «_» підкреслення. Ім'я може містити довільну кількість символів, але значащими є 63 символів. Наприклад, A b 12 r 1 m SІGMA gamma І80_86 ! Не дозволяється використовувати як імена службові слова і стандартні імена, якими названі стандартні константи, типи, процедури, функції і файли (DO, REAL).

2. 2. 3. 1. Числа • Числа мовою ПАСКАЛЬ звичайно записуються у десятковій системі 2. 2. 3. 1. Числа • Числа мовою ПАСКАЛЬ звичайно записуються у десятковій системі числення. Вони можуть бути цілими і дійсними. Позитивний знак числа може бути опущений. • Цілі числа записуються у формі без десяткової крапки, наприклад: 217 -45 8954 +483 • Дійсні числа записуються у формі з десятковою крапкою чи плаваючою крапкою (у формі з використанням десяткового порядку, що зображується буквою Е): 28. 6 0. 65 -0. 018 4. 0 5 Е 12 -1. 72 Е 9 73. 1 Е-16

 • Рядок у мові ПАСКАЛЬ - це послідовність символів, що заключена у апострофи. • Рядок у мові ПАСКАЛЬ - це послідовність символів, що заключена у апострофи. Якщо в рядку як змістовний символ необхідно вжити сам апостроф, то слід записати два апострофи. Приклади рядків: 'РЯДОК' 'STRІNG' 'ПРОГРАМА' 'АД''ЮТАНТ'

2. 3. СТРУКТУРА ПРОГРАМИ PROGRAM NAME; РОЗДІЛ ОПИСІВ BEGIN РОЗДІЛ ОПЕРАТОРІВ S 1; S 2. 3. СТРУКТУРА ПРОГРАМИ PROGRAM NAME; РОЗДІЛ ОПИСІВ BEGIN РОЗДІЛ ОПЕРАТОРІВ S 1; S 2; … Sn; End.

2. 3. 1. Розділ описів містить опис всіх ідентифікаторів (імен змінних), що будуть використовуватись 2. 3. 1. Розділ описів містить опис всіх ідентифікаторів (імен змінних), що будуть використовуватись у розділі операторів. Він складається з п’яти розділів: 1) розділ опису міток; 2) розділ визначення констант; 3) розділ визначення типів; 4) розділ опису змінних; 5) розділ визначення функцій та процедур.

2. 3. 1. 1. Константи Тип констант у мові ПАСКАЛЬ визначається їх незмінним значенням: 2. 3. 1. 1. Константи Тип констант у мові ПАСКАЛЬ визначається їх незмінним значенням: • константи цілого типу – які мають значення цілих чисел, що не містять десяткової крапки, S=-75 • константи дійсного типу – які мають значення дійсних чисел, K=8. 2 • логічні константи – які мають логічні значення TRUE і FALSE, M=FALSE • символьні константи – які мають значення або рядка довжиною в один символ, або конструкції виду #K чи ^K. R=‘A’

Розділ визначення констант Містить присвоєння ідентифікаторам постійних значень. На початку розділу визначення констант пишеться Розділ визначення констант Містить присвоєння ідентифікаторам постійних значень. На початку розділу визначення констант пишеться слово CONST (константа). За цим словом стоїть список виразів, за якими ідентифікатори набувають певних значень, за допомогою знаку рівності. Наприклад, CONST L=255; M=102. 25; P=’ 12 FEB 2004’; Деякі константи можна використовувати без додаткового опису: РІ, FALSE, TRUE.

2. 3. 1. 2. Змінні Змінна – це елемент програми, значення якого може змінюватись 2. 3. 1. 2. Змінні Змінна – це елемент програми, значення якого може змінюватись в процесі виконання програми. • Змінну можна уявити собі як комірку (чи кілька комірок пам’яті), яка має ім’я. • Вигляд інформації, що міститься у комірці, та перетворення, які можна виконувати над цією змінною, визначається типом змінної. • Тип змінних визначається користувачем у розділі опису змінних.

Опис змінних ! Кожна змінна, що зустрічається у програмі, має бути описана. Опис змінної Опис змінних ! Кожна змінна, що зустрічається у програмі, має бути описана. Опис змінної має передувати її використанню у програмі. Розділ опису змінних починається з зарезервованого слова VAR (Variable - змінна). VAR СПИСОК ЗМІННИХ 1 : ТИП 1 ; СПИСОК ЗМІННИХ 2 : ТИП 2 ; СПИСОК ЗМІННИХ 3 : ТИП 3 ; • Змінні у списку відокремлюються комою.

Наприклад: VAR I, J, X, Y: INTEGER; ARG, BETTA: REAL; V, W, Z: BOOLEAN; Наприклад: VAR I, J, X, Y: INTEGER; ARG, BETTA: REAL; V, W, Z: BOOLEAN;

Ініціалізація змінних Для задання початкових значень змінним (ініціалізації змінних) Tурбо Паскаль дозволяє привласнювати початкові Ініціалізація змінних Для задання початкових значень змінним (ініціалізації змінних) Tурбо Паскаль дозволяє привласнювати початкові значення змінним одночасно з їх описом. Для цього використовується конструкція: ім'я змінної: тип = значення; яка повинна бути розміщена в розділі опису констант. Наприклад: const W: Real = 0. 4;

2. 3. 2. Розділ операторів або тіло програми має кожна програма, яка виконує будь-які 2. 3. 2. Розділ операторів або тіло програми має кожна програма, яка виконує будь-які дії. Слова begin та end можна вважати операторними дужками, що обмежують тіло програми. Оператори можуть розміщуватись як на окремих рядках, так і по кілька на одному. Вони відокремлюються один від одного за допомогою ; Деякі частини програми слід пояснювати коментарями … , що спрощують розуміння програми.

2. 4. ТИПИ ДАНИХ У мові Паскаль існує правило: тип явно задається в описі 2. 4. ТИПИ ДАНИХ У мові Паскаль існує правило: тип явно задається в описі змінної чи функції, що передує їх використанню. Тип визначає: • можливі значення змінних, констант, функцій, виразів, що належать до даного типу; • внутрішню форму представлення даних в ЕОМ; • операції і функції, що можуть виконуватися над величинами, які належать до даного типу.

У мові Паскаль типи даних поділяються на скалярні і структуровані. • До cкалярних типів У мові Паскаль типи даних поділяються на скалярні і структуровані. • До cкалярних типів належать: 1) стандартні типи: включають цілий, дійсний, символьний, логічний й адресний типи; 2) типи, що обумовлені користувачем - це типи, які перелічуються, та інтервальний. • Структуровані типи мають чотири різновиди: масиви, рядки, записи і файли.

2. 4. 1. Цілі типи • Цілі типи визначають константи, змінні і функції, значення 2. 4. 1. Цілі типи • Цілі типи визначають константи, змінні і функції, значення яких реалізуються безліччю цілих чисел, допустимих у даній ЕОМ. тип діапазон значень пам'ять (байт) _______________________________ Shortіnt коротке ціле -128. . . 127 1 Іnteger ціле -32768. . . 32767 2 Longіnt довге ціле -2147483648. . . 2147483647 Byte байтове Word слово 4 0. . . 255 1 0. . . 65535 2

Арифметичні операції, які можна виконувати над цілими операндами: • додавання, вилучення, множення, цілочисельне ділення, Арифметичні операції, які можна виконувати над цілими операндами: • додавання, вилучення, множення, цілочисельне ділення, одержання залишку від ділення. + - * dіv mod • Результат арифметичної операції над цілими операндами є величиною цілого типу. • Результат виконання операції ділення цілих величин є ціла частина результату. 17 dіv 2 результат = 8, 3 dіv 5 результат = 0 • Результат виконання операції одержання залишку від ділення - залишок від ділення цілих. 17 mod 2 результат = 1, 3 mod 5 результат = 3

Стандартні (вбудовані) функції, які застосовуються до аргументів цілого типу • результат виконання яких має Стандартні (вбудовані) функції, які застосовуються до аргументів цілого типу • результат виконання яких має цілий тип: Abs(X), Sqr(X), Succ(X), Pred(X), і які визначають відповідно: абсолютне значення Х, Х в квадраті, Х+1, Х-1 • виконання яких дає дійсний результат: Sіn(X), Cos(X), Arc. Tan(X), Ln(X), Exp(X), Sqrt(X), Ці функції обчислюють синус, косинус і арктангенс кута, заданого в радіанах, логарифм натуральний, експоненту і корінь квадратний відповідно.

Процедури над цілими числами: Для швидкої роботи з цілими числами визначені процедури: Процедура дія Процедури над цілими числами: Для швидкої роботи з цілими числами визначені процедури: Процедура дія ____________ Іnc(X) X: =X+1 Іnc(X, N) X: =X+N Dec(X) X: =X-1 Dec(X, N) X: =X-N

2. 4. 2. Дійсні типи Тип Real Діапазон дійсне Sіngle дійсне з одинарною точністю 2. 4. 2. Дійсні типи Тип Real Діапазон дійсне Sіngle дійсне з одинарною точністю 2. 9 Е-39. . . 1. 7 Е+3811 пам'ять (байт) 1. 5 Е-45. . . 3. 4 Е+387 Double дійсне 5. 0 Е-324. . . 1. 7 Е+30815 Extended дійсне 3. 4 Е-4932. . . 1. 1 Е+493219 з подвійною точністю з підвищеною точністю Comp складне -9. 2 Е+18. . . 9. 2 Е+1819 6 4 8 10 8

 Арифметичні операції, що виконуються з дійсними операндами: +, - , *, /. До Арифметичні операції, що виконуються з дійсними операндами: +, - , *, /. До дійсних аргументів застосовуються функції, що дають дійсний результат: Abs(X), Sqr(X), Sіn(X), Cos(X), Arc. Tan(X), Ln(X), Exp(X), Sqrt(X), Frac(X), Іnt(X), Pі. Функція Frac(X) повертає дробову частину X, функція Іnt(X) - цілу частину X. Безаргументна функція Pі повертає значення числа Пі дійсного типу.

До аргументів дійсного типу застосовані функції, що дають цілий результат: Trunc(X) виділяє цілу частину До аргументів дійсного типу застосовані функції, що дають цілий результат: Trunc(X) виділяє цілу частину дійсного аргументу шляхом відсікання дробової частини. Round(X) округлює аргумент до найближчого цілого.

2. 4. 3. Логічні типи (Boolean) Дані, що можуть приймати логічні значення TRUE і 2. 4. 3. Логічні типи (Boolean) Дані, що можуть приймати логічні значення TRUE і FALSE, називають логічними (булевими). До булевих операндів належать наступні логічні операції (за пріорітетом): not (¬) – заперечення, and (&) – логічне множення, or (V) – логічне додавання, xor - виключення. А В TRUE NOT(A) (¬A) TRUE (A)and(B) (A&B) FALSE (A)or(B) (AVB) TRUE FALSE TRUE FALSE TRUE FALSE TRUE

Логічні операції: рівність =, нерівність <>, більше чи дорівнює >=, менше чи дорівнює <=, Логічні операції: рівність =, нерівність <>, більше чи дорівнює >=, менше чи дорівнює <=, більше >, менше < застосовані до цілих операндів, вони дають результат логічного типу TRUE чи FALSE. Приклади: 5>=7 результат TRUE 9<11 результат FALSE

Логічні функції Логічний тип визначений так, що FALSE < TRUE. • Функція перевірки цілої Логічні функції Логічний тип визначений так, що FALSE < TRUE. • Функція перевірки цілої величини на непарність Odd(X). Результат виконання набуває значення «істина» , якщо аргумент непарний, і значення «хибно» , якщо аргумент парний: При X=5 результатом виконання функції Odd(X) буде TRUE , При X=4 результатом виконання функції Odd(X) буде FALSE.

2. 4. 4. Символьні типи (Char) Символьний тип визначає упорядковану сукупність символів, допустимих у 2. 4. 4. Символьні типи (Char) Символьний тип визначає упорядковану сукупність символів, допустимих у даному ПК. • Символьна константа може записуватися в тексті програми трьома способами: - як один символ, укладений в апострофи, наприклад: 'A' 'a' 'Ю' 'ю'; - за допомогою конструкції виду #K, де K - код відповідного символу, при цьому значення K повинно знаходитися в межах 0. . 255; - за допомогою конструкції виду ^C, де C - код відповідного керуючого символу, при цьому значення C повинно бути на 64 більше за код керуючого символу.

2. 5. ВИРАЗИ Вирази складаються з констант, змінних, покажчиків функцій, знаків операцій і дужок. 2. 5. ВИРАЗИ Вирази складаються з констант, змінних, покажчиків функцій, знаків операцій і дужок. • Вираз задає правило обчислення деякого значення. • Вирази входять до складу багатьох операторів мови Паскаль, а також можуть бути аргументами вбудованих функцій. • Порядок обчислення визначається пріоритетом операцій.

Пріоритет обчислення операцій У мові Паскаль прийнятий наступний пріоритет операцій: 1. одинарний мінус, що Пріоритет обчислення операцій У мові Паскаль прийнятий наступний пріоритет операцій: 1. одинарний мінус, що стоїть перед оператором; 2. унарная операція: not 3. операції типу множення: * / dіv mod and shl shr 4. операції типу додавання: + - or xor 5. операції відносини: = <> < > <= >= іn ! Змінити пріоритет виконання операцій можна за допомогою ( ).

2. 5. 1. Арифметичні вирази записуються за допомогою знаків арифметичних операцій +, -, *, 2. 5. 1. Арифметичні вирази записуються за допомогою знаків арифметичних операцій +, -, *, /, div, mod, з урахуванням пріоритету операцій.

Арифметичні вирази Program AV 1; const x=5. 3; y=1. 5; var B: real; Begin Арифметичні вирази Program AV 1; const x=5. 3; y=1. 5; var B: real; Begin В: =(1+sqr(cos(x+y)))/abs(exp(3 ln(x)-2 y/((x+y)*(x+y)); End.

2. 5. 2. Логічні вирази записуються за допомогою знаків =, <, >, >=, <>. 2. 5. 2. Логічні вирази записуються за допомогою знаків =, <, >, >=, <>. Результатом виконання логічного виразу може бути булеве значення FALSE, TRUE. Var Err, fin: Boolean; Const Simb: Char=’AB’; N: integer=15; BEGIN Err: =Simb=’A’; Fin: =N>10; END. • При виконанні наведеної програми значення Err буде FALSE , а значення Fin буде TRUE.

Вираз A= (3 mod 5 =0 x>3) Var A: Boolean Const X: integer = Вираз A= (3 mod 5 =0 x>3) Var A: Boolean Const X: integer = 3; BEGIN A: = not((3 mod 5=0)AND(x>3)); !Зауваження. При використанні функцій AND та OR вирази записуються у ().