Скачать презентацию Лекція 2 3 Розгляд розрахункових алгоритмів Модуль Скачать презентацию Лекція 2 3 Розгляд розрахункових алгоритмів Модуль

Л_2.3_ОТАМ.ppt

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

Лекція 2. 3 Розгляд розрахункових алгоритмів Модуль № 2 Лекція 2. 3 Розгляд розрахункових алгоритмів Модуль № 2 "Основи алгоритмізації й алгоритмів"

Зміст 1. Довідкові відомості про історію мови Турбо Паскаль. 2. Типи даних Турбо Паскаль. Зміст 1. Довідкові відомості про історію мови Турбо Паскаль. 2. Типи даних Турбо Паскаль. 3. Масив – фундаментальна структура даних. 4. Алгоритм розрахунку інтеграла за методом трапеції по значенням із масиву. 5. Контрольні питання

Література 1. Окулов С. М. Основы программирования / С. М. Окулов. – М. : Література 1. Окулов С. М. Основы программирования / С. М. Окулов. – М. : БИНОМ, 2005. – 440 с. 2. Фаронов В. В. Turbo Pascal. - Спб. : Бхв -Петербург, 2004. - 1056 с. 3. Шпак Ю. А. Turbo Pascal на прикладах / Під ред. Ю. С. Ковтанюка К. : Видавництво Юніор, 2003. - 496 с. : іл.

1. Довідкові відомості про історію мови Турбо Паскаль 1968 -1971 р. – розробка швейцарським 1. Довідкові відомості про історію мови Турбо Паскаль 1968 -1971 р. – розробка швейцарським вченим Ніклаусом Віртом, що працював на кафедрі інформатики Стенфордського університету (Цюріх), получила широке розповсюдження завдяки наочності програм та легкості вивчення. 1983 р. – поява мови програмування Турбо Паскаль на ринку програмних продуктів, 1 -а версія. (до цього часу лідер Бейсик, має інтегроване середовище, редактор, компілятор, середовище виконання). 1984 р. – 2 -а версія мови. 1985 р. – 3 -а версія мови. 1988 р. – компілятор став вбудованим, вбудований відладник. 1989 р. - версія 5. 5, перехід до об’єктно-орієнтованого програмування, 6 -а версія з багатовіконним та багатофайловим режимом, використання ООП, має вбудований асемблер та інші можливості. 1992 р. – компанія Borland International випускає пакети Borland Pascal 7. 0, Turbo Pascal 7. 0.

 • Пакет Turbo Pascal 7. 0 використовує новітні досягнення в програмуванні, має велику • Пакет Turbo Pascal 7. 0 використовує новітні досягнення в програмуванні, має велику бібліотеку модулів. • Середовище програмування дозволяє створювати тексти програми, компілювати їх, знаходити та виправляти помилки, компонувати програми з окремих частин, використовувати модулі та виконувати відлажену програму

Перевагами мови Паскаль 1. Простий синтаксис мови. Невелике число базових понять. Програми на Паскале Перевагами мови Паскаль 1. Простий синтаксис мови. Невелике число базових понять. Програми на Паскале легко читати. 2. Низькі апаратні й системні вимоги як самого компілятора, так і програм, написаних на Паскале. 3. Універсальність мови. Мова Паскаль застосуємо для рішення практично всіх завдань програмування. 4. Підтримка структурного програмування, програмування " зверху-донизу", а також об’єктно-орієнтованого програмування.

Запуск програми Для початку роботи із середовищем розробника зручніше за все надійти в такий Запуск програми Для початку роботи із середовищем розробника зручніше за все надійти в такий спосіб: 1. Запустити Norton Commander (Far Manager); 2. Зайти в каталог, у якому планується зберігати файли з вихідними текстами програми, а також допоміжні файли вашої прграммы; 3. Викликати гаряче меню Norton Commander (нажавши клавішу F 2); 4. Вибрати рядок "Turbo Pascal 7. 0"; 5. Якщо вікно редагування не відкрилося, то відкрити його через пункт меню "File" (нажати Alt+F, вибрати New).

Вікно середовища розробника Вікно середовища розробника

По функціональному призначенню виділяється три області екрана: • Рядок меню • Робоча область • По функціональному призначенню виділяється три області екрана: • Рядок меню • Робоча область • Рядок стану

Розділи меню File. Дозволяє виконувати всі основні дії з файлами (створення, відкриття, збереження. . Розділи меню File. Дозволяє виконувати всі основні дії з файлами (створення, відкриття, збереження. . ) Edit. Дозволяє виконувати всі основні операції редагування тексту (копіювання, вставка, видалення фрагментів, скасування останніх змін. . ) Search. Дозволяє здійснювати пошук і заміну фрагментів тексту. Run. Дозволяє запускати програму, у тому числі в покроковому режимі. Compile. Дозволяє здійснювати компіляцію програми. Debug. Містить команди, що полегшують процес пошуку помилок у програмі. Tools. Містить деякі додаткові засоби Турбо Паскаль. Options. Дозволяє встановити необхідні для роботи параметри компілятора й середовища розроблювача. Window. Дозволяє виконувати всі основні операції з вікнами (відкривати, закривати, переміщати, змінювати розмір). Help. Дозволяє одержати наявну в системі довідкову інформацію.

Основні команди й гарячі клавіші Ctrl+F 9 - запуск програми Alt+F 5 - перегляд Основні команди й гарячі клавіші Ctrl+F 9 - запуск програми Alt+F 5 - перегляд користувальницького екрана F 2 - збереження програми F 3 - відкриття збереженої програми Alt+F 3 - закриття активного вікна Alt+X - вихід з Турбо Паскаль F 1 - контекстна допомога Ctrl+F 1 - довідка про оператора, на якому встановлений курсор Alt+Backspace - скасування последнео зміни Ctrl+Y - видалення рядка Shift+стрілки - виділення блоку тексту Ctrl+Insert - копіювання виділеного блоку в буфер Shift+Insert - вставка з буфера

Алфавіт мови Алфавіт - це сукупність припустимих у мові символів. Алфавіт Турбо Паскаль включає Алфавіт мови Алфавіт - це сукупність припустимих у мові символів. Алфавіт Турбо Паскаль включає наступний набір основних символів: рядкові й прописні латинські букви: ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz пробіл підкреслення: _ арабські цифри: 0123456789 знаки операцій: + - * / = <> < > <= >= : = @ обмежники: . , ' ( ) [ ] (. . ) { } (* *). . : ; специфікатори: ^ # $

Числа в мові Паскаль записуються в десятковій системі числення. Вони можуть бути цілими й Числа в мові Паскаль записуються в десятковій системі числення. Вони можуть бути цілими й дійсними. Позитивний знак числа може бути опущений. Цілі числа записуються у формі без десяткової крапки, наприклад: 217 -45 8954 +483 Дійсні числа записуються у формі з десятковою крапкою: 28. 6 0. 65 -0. 018 4. 0 Можливий також запис із використанням десяткового порядку, що зображується буквою Е: 5 Е 12 -1. 72 Е 9 73. 1 Е-16 В "перекладі" такий запис варто розуміти відповідно як: 5 x 1012 -1. 72 x 109 73. 1 x 10 -16 Паскаль допускає запис цілих чисел і фрагментів дійсних чисел у формі з порядком у шостнадцятирічної системі числення: $7 F $40 $ABC 0 Рядка в мові Паскаль - це послідовність символів, записана між апострофами. Якщо в рядку як змістовний символ необхідно вжити сам апостроф, то варто записати два апострофи. Приклади рядків: 'РЯДОК' 'STRING' 'ПРОГРАМА' 'АД''ЮТАНТ'

Деякі команди редактора Команди керування рухом курсора Стрілка вправо - Переміщення курсора на символ Деякі команди редактора Команди керування рухом курсора Стрілка вправо - Переміщення курсора на символ право; Стрілка вліво - Переміщення курсора на символ вліво; Стрілка вверх - Переміщення курсора на рядок вверх; Стрілка вниз - Переміщення курсора на рядок донизу; Home - Переміщення курсора на початок рядка; End - Переміщення курсора в кінець поточного рядка; Page Up - Переміщення курсора на сторінку вверх; Page Down - Переміщення курсора на сторінку донизу; (сторінка – один екран) Ctrl + Home - Переміщення курсора в лівий верхній кут; Ctrl +End - Переміщення курсора в лівий нижній кут;

Команди вставки та видалення тексту • Insert - Включення – виключення режиму вставки; • Команди вставки та видалення тексту • Insert - Включення – виключення режиму вставки; • Delete – видалення символу, що знаходиться в позиції курсору; • Backspase – видалення символу, що стоїть перед курсором; • Ctrl +N - вставка пустого рядка над рядком, де знаходиться курсор; • Ctrl +Y - видалення рядка, де знаходиться курсор.

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

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

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

поняття відношення порядку • Якщо множину значень розглядати як упорядковану множину, та кожне значення поняття відношення порядку • Якщо множину значень розглядати як упорядковану множину, та кожне значення зв’язати з деяким порядковим числом, яке відповідає його порядковому номеру. • В любому порядковому типі для кожного значення крім першого існує попереднє, та для кожного значення за виключенням останнього існує наступне значення.

функції для роботи з порядковими типами • Ord - повертає порядковий номер значення любого функції для роботи з порядковими типами • Ord - повертає порядковий номер значення любого порядкового типу; • Pred - повертає попереднє значення для заданого значення порядкового типу; • Succ - повертає наступне значення для заданого значення порядкового типу;

Типи даних Тип Довжина (байт) Діапазон значень Операції Цілі типи integer 2 -32768. . Типи даних Тип Довжина (байт) Діапазон значень Операції Цілі типи integer 2 -32768. . 32767 +, -, /, *, Div, Mod, >=, <=, =, <>, <, > byte 1 0. . 255 +, -, /, *, Div, Mod, >=, <=, =, <>, <, > word 2 0. . 65535 +, -, /, *, Div, Mod, >=, <=, =, <>, <, > shortint 1 -128. . 127 +, -, /, *, Div, Mod, >=, <=, =, <>, <, > longint 4 -2147483648. . 2147483647 +, -, /, *, Div, Mod, >=, <=, =, <>, <, >

Типи даних Дійсні типи real 6 2, 9 x 10 -39 1, 7 x Типи даних Дійсні типи real 6 2, 9 x 10 -39 1, 7 x 1038 +, -, /, *, >=, <=, =, <>, <, > singl 4 e 1, 5 x 10 -45 3, 4 x 1038 +, -, /, *, >=, <=, =, <>, <, > doub 8 le 5 x 10 -324 1, 7 x 10308 +, -, /, *, >=, <=, =, <>, <, > exten 10 de d 3, 4 x 10 -4932 1, 1 x 104932 +, -, /, *, >=, <=, =, <>, <, >

Логічні типи boole 1 an true, false Not, And, Or, Xor, >=, <=, =, Логічні типи boole 1 an true, false Not, And, Or, Xor, >=, <=, =, <>, <, > Символьні типи char 1 все символи коду ASCII +, >=, <=, =, <>, <, >

поняття еквівалентності й сумісності типів. Два типи Т 1 і Т 2 є еквівалентними поняття еквівалентності й сумісності типів. Два типи Т 1 і Т 2 є еквівалентними (ідентичними), якщо виконується одне із двох умов: • Т 1 і Т 2 являють собою те саме ім'я типу; • тип Т 2 описаний з використанням типу Т 1 за допомогою рівності або послідовності рівностей. Наприклад: type T 1 = Integer; T 2 = T 1; T 3 = T 2;

сумісність типів Так, типи є сумісними, якщо: • вони еквівалентні; • є обоє або сумісність типів Так, типи є сумісними, якщо: • вони еквівалентні; • є обоє або цілими, або дійсними; • один тип - інтервальний, іншій - його базовий; • обоє інтервальні із загальним базовим; • один тип - строковий, інший символьний.

сумісність типів Приведення типів дозволяє розглядати ту саму величину в пам'яті ЕОМ як приналежним сумісність типів Приведення типів дозволяє розглядати ту саму величину в пам'яті ЕОМ як приналежним різним типам. Для цього використовується конструкція Ім'я_Типу(змінна або значення) • Наприклад, Integer('Z') являє собою значення коду символу 'Z' у двобайтному поданні цілого числа, а Byte(534) дасть значення 22, оскільки ціле число 534 має тип Word і займає два байти, а тип Byte займає один байт, і в процесі приведення старший байт буде відкинутий.

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

Константи • Цілочислені константи. Можуть бути визначені за допомогою чисел, записаних у десятковому або Константи • Цілочислені константи. Можуть бути визначені за допомогою чисел, записаних у десятковому або шістнадцятирічному форматі даних. Це число не повинне містити десяткової крапки. • Дійсні константи. Можуть бути визначені числами, записаними в десятковому форматі даних з використанням десяткової крапки. • Символьні константи. Можуть бути визначені за допомогою деякого символу (ув'язненого в апострофи). • Строкові константи. Можуть бути визначені послідовністю довільних символів (ув'язнених в апострофи). • Типізовані константи. Являють собою ініціалізовані змінні, які можуть використовуватися в програмах нарівні зі звичайними змінними. Кожній типізованій константі ставиться у відповідність ім'я, тип і початкове значення.

Приклади констант • year: integer = 2001; • symb: char = '? '; • Приклади констант • year: integer = 2001; • symb: char = '? '; • money: real = 57. 23;

Математичні операції Символ Назва операції операці ї Приклад * множення 2*3 (результат: 6) / Математичні операції Символ Назва операції операці ї Приклад * множення 2*3 (результат: 6) / ділення 30/2 (результат: 1. 5 E+01) + Додавання 2+3 (результат: 5) - Віднімання 5 -3 (результат: 2) div цілочислене ділення 5 div 2 (результат: 2) mod залишок від ділення 5 mod 2 (результат: 1)

Логічні операції • • NOT - логічне заперечення ( Логічні операції • • NOT - логічне заперечення ("НІ") AND - логічне множення ("І") OR - логічне додавання ("АБО") XOR - логічне " що виключає АБО"

таблиці істинності A B not A A and B A or B A xor таблиці істинності A B not A A and B A or B A xor B true false true false true false false true

Операції відносини • • • > - більше < - менше = - дорівнює Операції відносини • • • > - більше < - менше = - дорівнює <> - не дорівнює >= - більше або дорівнює <= - менше або дорівнює

Основні математичні функції Abs(X) - Повертає абсолютне значення числа X. Cos(X), Sin(X) - Повертає Основні математичні функції Abs(X) - Повертає абсолютне значення числа X. Cos(X), Sin(X) - Повертає косинус (синус) числа X, де X - кут у радіанах. Функцій тангенс і котангенс у Турбо Паскале немає. Для їхнього обчислення використовуйте вираження sin(x)/cos(x) (або cos(x)/sin(x) для котангенса). Arc. Tan(X) - Повертає арктангенc числа X. Exp(X) - Повертає число, рівне e у ступені X. Ln(x) - Повертає число, рівне натуральному логарифму від числа X. Pi - Число Пі. Sqr(X) - Повертає число, рівне квадрату числа X. Функції піднесення в довільний ступінь у Турбо Паскале немає. Використовуйте багаторазове множення для піднесення в целочисленную ступінь, або функції Exp і Ln для піднесення в дійсний ступінь. Sqrt(X) - Повертає число, рівне квадратному кореню із числа X.

Trunc(X) - Повертає число, рівне цілої частини числа X. (Відбувається відкидання дробової частини числа Trunc(X) - Повертає число, рівне цілої частини числа X. (Відбувається відкидання дробової частини числа X. Результат виконання має тип Longint). Frac(X) - Повертає число, рівне дробової частини числа X. Int(X) - Повертає число, рівне цілої частини числа X. Результат виконання функції - real. Round(X) - Функція округляє число X. Значення, що повертається, має тип Longint.

Random(X) - Повертає випадкове ціле число в діапазоні 0. . X. Якщо аргумент опущений Random(X) - Повертає випадкове ціле число в діапазоні 0. . X. Якщо аргумент опущений (Random), то вертається випадкове речовинне число від 0 до 1. Перед використанням random у програмах рекомендується спочатку ініціалізувати генератор псевдовипадкових чисел процедурою Randomize. У противному випадку при кожному запуску програми буде генеруватися та сама послідовність випадкових чисел. Приклад. Вивод на екран 5 випадкових чисел у діапазоні -10. var i: integer; begin randomize; for i: =1 to 5 do writeln(random(21)-10); end.

Inc(X, Y) - Збільшує значення числа X на Y. Якщо число Y не зазначене, Inc(X, Y) - Збільшує значення числа X на Y. Якщо число Y не зазначене, то збільшення відбувається на 1. Dec(X, Y) - Зменшує значення числа X на Y. Якщо число Y не зазначене, то зменшення відбувається на 1.

Оператори уведення й виводу • організацію уведення й висновку даних здійснюється з термінального пристрою. Оператори уведення й виводу • організацію уведення й висновку даних здійснюється з термінального пристрою. • Термінальний пристрій - це пристрій, з яким працює користувач, звичайно це клавіатура й екран (дисплей).

Уведення даних • Для уведення вихідних даних найчастіше використовується процедура Read. Ln: • Read. Уведення даних • Для уведення вихідних даних найчастіше використовується процедура Read. Ln: • Read. Ln(A 1, A 2, . . . AK); • Процедура робить читання До значень вихідних даних і привласнює ці значення змінним А 1, А 2, . . . , АК. • При уведенні вихідних даних відбувається перетворення із зовнішньої форми подання у внутрішнім, обумовленим типом змінних. Змінний, утворюючий список уведення, можуть належати або до цілого, або до дійсного, або до символьного типам. Читання вихідних даних логічного типу в мові Паскаль неприпустимо. • Значення вихідних даних можуть відділятися друг від друга пробілами й натисканням клавіш табуляції й Enter. Не допускається поділ чисел, що вводяться, комами! •

Вивод даних • використовуються процедури: Write(A 1, A 2, . . . AK); Write. Вивод даних • використовуються процедури: Write(A 1, A 2, . . . AK); Write. Ln(A 1, A 2, . . . AK); • Перший із цих операторів робить вивод значень змінних А 1, А 2, . . . , АК у рядок екрана. Другий оператор, на відміну від першого, не тільки робить висновок даних на екран, але й робить перехід до початку наступного екранного рядка. Якщо процедура writeln використовується без параметрів, то вона просто робить пропуск рядка й перехід до початку наступного рядка. Змінний, складовий список висновку, можуть ставитися до цілого, дійсному, символьному або булевського типу. Як елемент списку висновку крім імен змінних можуть використовуватися вираження й рядки. • • дійсні десяткові числа з десятковим порядком, символьного типу й рядка - у вигляді символів, логічного типу - у вигляді логічних констант TRUE і FALSE.

 • Оператор виводу дозволяє задати ширину поля висновку для кожного елемента списку висновку. • Оператор виводу дозволяє задати ширину поля висновку для кожного елемента списку висновку. У цьому випадку елемент списку висновку має вигляд А: К, де А - вираження або рядок, К вираження або константа цілого типу. Якщо виведене значення займає в поле висновку менше позицій, чим К, то перед цим значенням розташовуються пробіли. Якщо виведене значення не міститься завширшки поля К, то для цього значення буде відведена необхідна кількість позицій. • Для величин дійсного типу елемент списку висновку може мати вигляд А: К: М, де А - змінного або вираження дійсного типу, К ширина поля висновку, М - число цифр дробової частини виведеного значення. К й М - вираження або константи цілого типу. У цьому випадку дійсні значення виводяться у формі десяткового числа з фіксованою крапкою.

Приклад запису операторів виводу var r, r: Real; i, i: Integer; b, b: Boolean; Приклад запису операторів виводу var r, r: Real; i, i: Integer; b, b: Boolean; ch, ch, ch: Char; begin. . . Write. Ln(r, r: 10: 2); Write. Ln(i, i: 8); Write. Ln(b, b: 8); Write. Ln(ch, ch, ch); end.

Контрольні питання 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Контрольні питання 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. Назвати довідкові відомості про історію мови Турбо Паскаль, основні переваги мови Паскаль. Назвати порядок запуску програми Паскаль. Назвати та пояснити основні дії з вікном середовища розробника програм. Назвати та пояснити призначення основних розділів меню розробника програм. Назвати основні гарячі клавіші та пояснити основні дії за ними Перерахувати та дати пояснення основним елементам алфавіту мови Паскаль. Назвати та навести приклади запису цифр в мові Паскаль. Назвати та навести приклади команд редактора мови Паскаль. Визначити поняття даних та привести типи даних мови Паскаль. Назвати цілі типи даних навести приклади їх використання. Назвати дійсні типи даних навести приклади їх використання. Назвати логічні типи даних навести приклади їх використання. Назвати символьні типи даних навести приклади їх використання. Пояснити поняття сумісності та еквівалентності мови Паскаль та навести приклад їх використання. Назвати типи стандартних видів констант та навести прилади їх використання. Назвати основні типи математичних операцій мови Паскаль, навести приклади їх використання. Назвати основні типи логічних операцій мови Паскаль, навести приклади їх використання. Назвати основні типи операцій відносин мови Паскаль, навести приклади їх використання. Назвати основні типи математичних функцій мови Паскаль, навести приклади їх використання. Назвати типи математичних операцій, яких немає в мові Паскаль, навести приклади їх обчислення. Назвати основні оператори вводу-виводу, навести приклад їх застосування. Назвати основні оператори виводу, навести приклад їх застосування