Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

Подписываем
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Предоплата всего
Подписываем
1.Програма та етапи її розробки.
Програма це послідовність команд, які реалізовують рішення певної задачі.
Роботою компютера керую людина за допомогою програми. Вислів «написати програму» відображає тільки один з етапів створення компютерних програм, коли розробник програми пише команди на папері або за допомогою текстового редактора.
Програмування це процес створення програми, який може бути представлений послідовністю таких кроків:
2.Система швидкої розробки додатків і їх характеристики.
Інтегроване середовище Delphi це програмний продукт, у якому є все необхідне для проектування, запуску і тестування застосувань під Windows мовою Object Pascal. Програму Delphi запускають за правилами операційної системи Windows Насамперед ознайомимося з основними вікнами :
3.Середовище візуального програмування Delphi.
В основі сучасних систем розробки програмного забезпечення (RAD) лежить технологія візуального програмування. Суть якої полягає в тому, що суть розробки бере велику частину рутинної роботи, залишаючись програмісту роботу по конструювання діалогових вікон і функції обробки події. Автоматизація програмування досягає завдяки можливості переносити компонент. На так звану форму іншими словами переносити компонент, який володіє властивістю вікна windows ы призначений для розташування на ньому інших компонентів. Іншими словами переносячи компонент в програму з палітри компонентів і змінювати його властивості, не вносячи змін вручну до програмного коду. інтегроване середовище Делфі являє собою багато віконну с-му, його вигляд(інтерфейс) може відрізнятися в залежності від налаштування. Пакет делфі обєднує в собі візуальні засоби проектування програмних продуктів. Оптимізуючий компілятор з Обєкт Паскаль, підтримку сучасних інформаційних технологій, роботу з базами даних. Побудований на архітектурі обєктна-орієнтованих компонентів, делфі дає змогу багатократно використовувати вже створений код і тим самим час на зусилля, які витрачаються на розробку програмних продуктів. Після завантаження інтерфейс делфі має 5 вікон: 1)головне вікно програма, яка розробляється в середовищі, складається з рядка меню, палітри компонентів і панелі швидкого доступу; 2) вікно інспектора обєктів скл з 2 сторінок: а)список властивостей; б)список подій. Інформація на цих сторінках змінюється залежно від компонента виділеного у вікні форми. Важливо зрозуміти, що кожен компонент є обєктом і можна змінювати його вигляд і поведінку за допомогою інспектора обєктів або мишею. ЗАУВАЖЕННЯ! Технологія роботи в середовищі базується на ідеях обєктна-орієнтован програмуванні. Ідея ООП полягає у інкапсуляції(обєднанні) даних і засобів її опрацювання у тип, який наз класом, конкретна змінна певного класу і є обєктом і наз компонентою. Прикладами компонентів є елементи керування у вікні:кнопки, списки, текстові поля… Подія те, що проходить під час роботи програми. (1-разове клац миші-OnClick, 2-разове- DblClick). Кожній події присвоюється імя, реакцією на подію має бути яка небудь дія в делфі, яка реалізується як процедура обробки події. Отже, щоб програма виконувала деяку роботу у відповідь на дію користувача, програміст повинен написати процедуру обробки відповідної події тільки в тому випадку, якщо реакція на подію відрізняється від стандартної або невизначена, наприклад, якщо за умовою задачі обмеження символів, які вводяться в поле Edit, то процедура обробки події OnKeyPress писати не потрібно, так як під час роботи програми буде використана стандартна, захована від програміста процедура обробки цієї події. 3)вікно форми; 4)вікно редактора коду дає змогу вводити та редагувати тексти програм мовою Обєкт Паскаль. Воно є багатосторінковим, на кожній сторінці можна редагувати інший текстовий файл. 5)вікно дерева обєктів, які входять в нього. Вікно делфі(не головне)можна переміщувати, забирати з екрану, змінювати розміри. Не дивлячись на наявність багатьох вікон делфі є однодокументним середовищем(працювати з 1 документом).
4. Розробка додатку в Delphi. Схема формування Delphi- програми.
Розробка проекту складається з двох етапів: 1)створення інтерфейсної чатини; 2) визначення функціональності додатку. Інтерфейс додатку визначає спосіб користувача і додатка і те, яким чином користувач керує додатком. За допомогою конструктора форми інтерфейс створюється шляхом розміщення на формі компонентів(наз інтерфейс ними, керуючими), а функціональність додатку визначається процедурами, які виконуються при виникненні визначених подій, наприклад, які проходять при дії користувача з керуючими форми. Схема формування делфі-програми специфікація(задача) >Файли: проекту, форм модулів, ресурсів обєктів, опцій параметри… (проект) >(компіляція) exe-програма(програма).
5. Стандартні файли делфі-програми і їх характеристика.
6. Засоби консольного введення-виведеня в delphi.
Програми що працюють в Вінтовсі наз. додатками. В основі таких додатків є проект множина програмних файлів та допоміжних файлів. Delphi дає змогу створити і більш прості консольні додатки у яких для введення-виведення даних виключать консоль, тобто консольний додаток імітує роботу в тестовому режимі. Не дивлячись на те, що користувач працює з консольним додатком, як з DOS програмою, він є додатком піл Вінтовса і не працює під DOS. Консольні додатки зручні, як ілюстрація при розгляді загальних питань програмування, коли потрібно зосередись на суті програмування. Створити консольний додаток можна так: Вибираємо File-hew-Other-Console Application. За домовленістю, введення та виведення даних здійснюється за допомогою процедур введ-вивед. Процедури для введення: Read (для змінних), Readln, Readl. Зміни у схемах змінних відокремлюються комами. Readln відрізняється від read ти що після введення переводить курсор на повний рядок, а точніше в кінці своєї роботи прочитує код клавіші Enter. Readl процедура використовується для організації паузи виконання програми проводиться як правило після натискання Enter. У списку виведення крім назви змінних можна писати рядкові константи і навіть вирази. Процедури для виведення: Write(с.з), Writeln(с.з), Writel. 2 від 1 тим що після виведення переводит на новий рядок. Існує форматовне виведення в якому задають кількість позицій, що відведені під числом. Для цілого після виразу або змінної через двохкрапку вказують тільки кількість позицій. Для раціональних додатково через двокрапку вказують кількість цифр в дробовій частині і разом з тим відбувається заокруглення результату.
7.Основні поняття мови програмування ОПаскаль. Структура програми.
Мова обєкт паскаль є мовою програм делфі, являється обєктна-орієнтованим розширенням стандартної мови паскаль. 1)26в+26м+_=53символи. 2)0…9; 3)+,-,/,*,=,>,< - матем знаки; 4),.:»()[]{}(* *) розділові знаки; 5)#, $-спецзнаки. Слова мови поділяються: службові, стандартні ідентифікатори, ідентифікатори користувача. Ці слова змінювати не можна. Const для введення констант. var(real,integer…)- змінних. := - присвоєння. <> - не дорівнює. .. визначає діапазон значень <= >= (*багаторядковий коментар*) //- однорядковий коментар {коментар} {$ - початок дерективи ; } кінець. Кожна буква в дерективі визначає як має працювати компілятор.
Структура програми. Програма реалізує алгоритм розвязання задачі. Вона обєднує послідовність виконання конкретних вказівок над конкретними даними для реалізації конкретно встановленої мети. Програма складається з описової частини та тіла. Описова частина:
8. Типи даних Object Pascal , їх класифікація.
Дані, які опрацьовують в програмі поділяються на: Змінні, Константи, Літерали. Константи являють собою дані значення яких встановлені в розділі опису констант і не змінюються в процесі виконання програми. Змінні оголошуються в розділі оголошення змінних але свої значення вони отримують в процесі виконання програми, значення, яких можна змінювати. До констант і змінних можна звертатися за іменами. Літерали не мають імені і в тексті програми задається безпосередньо значенням тому літерами наз. Просто значеннями. Кожний елемент даних належить до визначеного типу, при цьому: тип змінної визначається при її оголошенні, а тип констант і літерів розпізнають компілятором автоматичного за вказаним значенням. Тип визначає множину значень, які можуть приймати елементи програм і сукупність операцій, допустимих над цими значеннями. Типи даних можна розділити на такі групи: Прості , Структуровані. Важливе значення має сумісності типів, яке означає, що типи рівні один одному або однин з них можу бути автоматично перетворений до другого. Сумісними, наприклад є дійсні і цілочисельний тип, так але ціле число автоматично перетворюється в дійсне, але не навпаки.
9. Арифметичні вирази. Правила утворення та обчислення.
Арифметичний вираз описує як правило обчислення значення деякої величини. Він може містити числа змінні функції зєднані символами арифметичних операцій: +, -, *, /, Div, mod. Div, mod оперіції цілочисельного ділення. a:= 10 Div 3; a:= 3. b:= 10 mod 3; b:= 1 остача від ділення. Результат ділення «/» двох цілих чисел завжди є дійсне число. Правила утворення та обчислення:
10. Команда присвоєння. Складена команда.
Оператор присвоювання. Цей оператор використовується тоді, коли змінній треба присвоїти якесь значення як фіксоване, так і значення іншої змінної чи виразу. Він має вигляд: ім'я_змінної := значення; знак “:=“ це лексема, яку не слід плутати зі знаком =, який використовується для порівняння. Оператор присвоювання “працює” таким чином: · Обчислюється значення виразу правої частини оператору . · Змінній лівої частини присвоюється обчислене значення
Складена команда це команда, в якій обєднано декілька команд за допомогою операторних дужок begin......end. Begin <команда1>; <команда2>; ....................... <команда n> end;
Складені логічні вирази це прості логічні вирази, з'єднані логічними операціями not (не), and (і), or (або). Прості логічні вирази, які входять у складені, записують у круглих дужках. Означення 1. Операція not, застосована до виразу А (пишеться not А), дає істинне значення, якщо вираз А хибний, і хибне, якщо вираз А істинний: 2.
[0.1] 11. Логічні операції та вирази 1.Логічна операція not (не). |
Величини цього типу приймають одне з двох значень: TRUE (істина) чи FALSE (хибність). Слова TRUE і FALSE є булеві константи. До булевих операндів можна застосовувати такі операції: AND (логічне І), OR (логічне АБО), NOT (логічне НЕ). Якщо А, В, С булеві змінні, то мовою Паскаль булевими виразами будуть, наприклад: A and В, В and (C or A) and A . Результатом операції AND буде істина (TRUE) тільки у тому випадку, коли обидва операнди мають значення TRUE, інакше результатом буде хибність (FALSE). Результатом операції OR буде Істина (TRUE), якщо хоча б один із операндів мас значення TRUE (АБО один, АБО інший, АБО разом), інакше результатом буде хибність (FALSE). Результатом операції NOT (HE) завжди є протилежна величина (якщо А є TRUE, то NOT А є FALSE). Якщо вираз не має дужок, порядок виконання операцій такий: спочатку NOT, потім AND і, наприкінці, OR. Крім булевих операцій, булеві значення мають операції відношення: =, <>, >, <, > = , <=
12. Команди організації розгалужень.
Кожен алгоритм можна проектувати застосовуючи три базові конструкції: лінійну, розгалуження та циклу.
Розгалуженою називається така алгоритмічна конструкція, яка передбачає у процесі виконання операцій вибір кількох можливих варіантів продовження роботи залежно від результату перевірки виконання певних умов. Розгалужена алгоритмічна конструкція, що складається лише з двох гілок, має назву простої, якщо гілок більше ніж дві складної. Розгалуження це алгоритмічна конструкція, де перевіряється умова (значення логічного виразу), і залежно від її істинності чи хибності виконується та чи інша серія команд. Є такі види розгалужень: 1) повне; 2) неповне; 3) вибір. Логічний вираз це засіб записування умов. Логічний вираз може приймати значення істинність або хибність. Хибному логічному виразу відповідає числове значення 0,а істинному будь-яке інше число. Бей сік-система істинний логічний вираз позначає числом 1. Логічні вирази бувають прості та складні. Простий логічний вираз це два арифметичні вирази, зєднані символом відношення (=, >, <, >=, <=, < >), а складений - це прості логічні вирази зєднані назвами логічних операцій: NOT (не), ANO (і) та OR (або). Для зміни порядку виконання рядків у програмі використовують команду переходу: GOTO <номер рядка> Дія команди. Відбувається перехід до рядка з зазначеним номером. Команда розгалуження IF. Повна форма умовної команди. Команду розгалуження іноді ще називають умовною командою. Вона має дві форми: повну та коротку. Загальний вигляд повної команди розгалуження такий: ІF< логічний вираз> THEN <серія 1> ELSE <серія 2>
Для команди. Якщо значення логічного виразу істинне, то виконується серія 1, якщо воно хибне, то виконується серія 2. У бейсику повну форму записують в одному рядку. Цикл складається з таких трьох етапів: 1) Перевірка умови циклу. Перевіряється умова, яка забезпечує вихід з циклу після досягнення мети. Якщо умова складена неправильно, то можна ніколи не вийти з циклу. Така ситуація називається зацикленням і її потрібно уникати. 2) Виконання серії команд. Виконується серія команд (основні дії), заради яких конструювали цикл. 3) Зміна значення параметра. Згідно з умовою задачі змінюється значення змінної, яка є в умові. Ця змінна параметром циклу.
13. Консольні додатки в делфі, їх особливосі і застосування.
Консольна програма не має інтерфейсу користувача. Такі програми використовуються для розробки системних програм, автоматизованих модульних тестів та інших програм без інтерфейсу користувача. До появи операційних систем типу Windows більшість програмістів створювали програми на основі операційної системи MS-DOS, коли основним пристроєм введення вхідних даних була клавіатура, а виведення даних монітор, що працював у режимі відображення символьних виразів інформації (букви, цифри і спеціальні знаки). Тому до стандартної мови програмування Pascal були введені оператори, що забезпечили введення даних із клавіатури (read і readln) та виведення даних на екран монітора (write і writeln) і реалізовувалися відповідними компіляторами. На сьогоднішній день ці оператори залишаються основними операторами введення-виведення даних при програмуванні мовою Pascal. Слід зазначити, що консольна програма створюється в Delphi (Kylix) на базі операційної системи Windows (Linux), для якої використовується кодування символів ANSI. Виконується консольна програма як програма для операційної системи MS-DOS (Linux-консоль), для якої використовується кодування символів ASCII. Символи літер українського (російського) алфавіту в цих кодуваннях мають різні коди. Це призводить до того, що за консольною програмою на екрані замість повідомлень українською (російською) мовою виводяться беззмістовні послідовності символів. Тому повідомлення консольних програм бажано записувати символами латинського алфавіту. Компіляція консольної програми виконується звичайним способом, тобто потрібно скористатись командою Compile із меню Project або комбінацією клавіш Ctrl+F9. Виконати перевірку правильності виконання програми можна за допомогою команди Run із меню Run (F9), за якою здійснюється компіляція програми і одразу її виконання під управлінням Delphi.
14. Оператор циклу з параметром
Оператор циклу з параметром (оператор for) організовує виконання деякого оператора певне число разів. Існує дві форми оператора: 1)for параметр: = pz to kz do оператор; 2)for параметр: = pz downto kz do оператор; Тут параметр циклу (лічильник) змінна порядкового типу; pz і kz вирази, що визначають початкове і кінцеве значення лічильника; оператор один (можливо складений) оператор, який називають тілом циклу, що повторюється певне число разів. На першому кроці циклу параметр набуває значення pz. У цей же момент відбувається обчислення kz значення параметра на останньому кроці циклу. Після кожного виконання тіла циклу, якщо параметр циклу не дорівнює kz, відбувається зміна параметра на наступне, більше або менше значення залежно від форми оператора for, тобто неявно відбувається виконання одного з двох операторів: 1)параметр: = Succ(параметр); //форма do; 2)параметр: = Pred(параметр); //форма downto. У випадку pz>kz у першій формі оператора або pz<kz у другій його формі помилки немає, але цикл не буде виконаний ні разу. Після завершення роботи циклу значення параметра залишається рівним kz. Рекомендації. Використовувати цикл for у разі зазделегідь відомої кількості повторень. Не змінювати параметр у тілі циклу. При використанні кратних (вкладених) циклів застосовувати різні змінні як параметри. Визначати до циклу значення всіх змінних, що використовуються у ньому. Не ставити крапку з комою після do.
15. Оператори циклу з умовою
Якщо зазделегідь не відоме число повторень циклу, то використовують цикли з умовою, які є двох типів: while і repeat. Цикл типу while є циклом з передумовою. Він використовується зазвичай у випадках, коли зазделегідь не відома кількість повторення циклу і можливим є випадок, коли цикл не буде виконаний жодного разу. Цикл типу while має вигляд: while логічний_вираз do оператор; До тих пір, доки значення логічного_виразу буде істинним, доти буде виконуватися один оператор (можливо складений). Оскільки значення логічного виразу перевіряється на початку кожної ітерації, то тіло циклу може бути не виконаним ні разу. Отже, у цьому циклі логічний вираз це умова продовження циклу. Інший варіант циклу з умовою це цикл repeat. Його наз. циклом з постумовою. Він має вигляд: repeat оператор1;... операторN until логічний_вираз; Оператор repeat організує виконання декількох операторів, що повторюється доти, доки не стане істинним логічний_вираз. Тіло циклу обовязково виконається хоч би один раз. Так, у цьому циклі логічний вираз це умова виходу з циклу. Рекомендації. Для того, щоб уникнути зациклювання програми, необхідно забезпечити зміну на кожному кроці циклу значення хоча б однієї змінної, що входить в умову циклу. Після виходу з циклу зі складною умовою (з використанням операцій and, or чи xor), як правило, необхідна додаткова перевірка того, за якою умовою цикл завершений. На місці оператора у циклі може стояти інший цикл (отримуємо вкладені цикли). В усіх трьох циклах, у яких на місці оператора є складений оператор, всередині можна записати оператор break. Якщо під час виконання циклу оператор break отримує керування, то відбувається негайний вихід з циклу і перехід на наступний опе-ратор, який записаний за цим циклом. Процедура continue, яку можна записати тільки у тілі циклу, пропускає записані за нею оператори і переходить до наступної ітерації циклу.
16. Ввід даних в делфі-програмі.
Вікно введення це стандартне діалогове вікно, яке появляється на екрані в результаті виклику ф-ції InputBox. Значення ф-ції рядок який ввів користувач. Загальний вигляд ф-ції:
Змінна:= InputBox(Заголовок, Підказка, Значення); де Змінна змінна рядкового типу, значення якої буде отримане від користувача; Заголовок текст заголовку вікна введення; Підказка текст пояснюючого повідомлення; Значення текст, який буде знаходитися в полі введення, коли вікно введення появиться на екрані. Значення ф-ції рядкового типу. Введення з поляредагування. Поле редагування це компонент Еdit. Введення даних з поля редагування здійснюється зверненням до властивості Text. Якщо компонент Edit1 використовується для введення вихідних даних буде мати вигляд: Funt:= StrToFloat(Edit1.Text);
17. Вивід результатів роботи делфі-програми.
Вивід у вікно повідомлення. Вікно повідомлення використовується для того, щоб привернути увагу користувача. За допомогою вікна повідомлення програма може проінформувати про помилку у вихідних даних або попросити підтвердження виконання операцій. Вивести на екран вікно з повідомленням можна за допомогою процедури ShowMessege або функції MessegeDlg. Процедура ShowMessege виводить на екран вікно з текстом і командою кнопкою ОК. Загальний вигляд: ShowMessege(Повідомлення); де Повідомлення текст, який буде виведений у вікні. Значення ф-ції MessegeDlg число, перевіривши значення якого, можна визначити, вибором якої командної кнопки був завершений діалог. Загальний вигляд ф-ції: Вибір:= MessegeDlg(Повідомлення, Тип, Кнопки, КонтекстДовідки); де Повідрмлення текст повідомлення; Тип тип повідомлення який задається поіменованою константою. Кнопки список кнопок, які відображаються в вікні повідомлення. КонтекстДовідки параметр, який визначає розділ довідкової с-ми що появиться на екрані, якщо користувач натисне ф1. Вивід в поле діалогового вікна. Частина діалогового вікна, яка призначена для виводу інформації, назив полем виводу або полем мітки. Поле виводу це компонент Label. Вмістиме поля виводу визначається властивістю Caption. Для того, щоб під час роботи програми змінити вмістиме поля виводу треба присвоїти властивості нове значення. Властивість Caption символьного типу. Для того щоб під час роботи програми вивестив поле мітки числове значення, треба перетворити число в стрічку за допомогою ф-ції FloatToStr, IntToStr
18. Основні концепції обєктно-орієнтованого програмування.
Поняття об'єкта покладено в основу ще іншого стилю програмування об'єктно-орієнтованого. Візуальне програмування виникло на його основі як засіб автоматизації процесів об'єктно-орієнтованого програмування. Користувачеві для складання програми тепер надаються графічні (візуальні) засоби компоненти. Компоненти мають певні властивості (атрибути). Властивості можуть набувати значення з деякого заздалегідь фіксованого набору чи значення, придумані користувачем. Користувач розв'язує різноманітні задачі шляхом добирання компонентів і надання потрібних значень їхнім властивостям. Для опрацювання числових та інших даних, тобто для розв'язування характерних для першого розділу задач, складають підпрограми-процедури так, як у традиційній мові Паскаль. Такі процедури називають методами об'єктів. Отже, суть візуального програмування полягає в конструюванні розв'язку поставленої задачі методом вставляння компонентів (візуальних заготовок) у форму, наданні значень їхнім властивостям і в застосуванні чи створенні методів, потрібних для розв'язування задачі.
19. Підпрограми. Процедури та функції Object Pascal.
Основні правила створення підпрограм та їх використання: 1. Структура будь-якої підпрограми аналогічна структурі всієї програми на мові ОПаскаль. 2. Підп.. повинна бути описана до того як вона буде використана в основній програмі. 3. В програмі опис процедур і ф-цій повинен розміщуватися між розділами змінних і операторів. 4. Кожна процедура і ф-ція визнач лише один раз але може викор багаторазово. 5. Будь-яка програма може містити декілька процедур і ф-цій які в свою чергу також можуть містити ф-ції і процедури тоді в розділі описів підпрограми повинні бути описи підпрограм нижчого рівня, в них описи інших підпрограм. 6. Якщо результатом роботи підпрограми має бути одне значення, то цю підпрограму логічніше оформити у вигляді ф-ції. Якщо необх отримати 2 і більше вихідних даних, то слід використати процедуру. Таким чином ф-ція є частковим випадком процедури В Pascal є два види підпрограм:
Оголошуються процедури і функції у розділі оголошень, причому оголошення
Формальне оголошення процедур має вигляд:
PROCEDURE <імя> (<список формальних параметрів>);
<розділ оголошень>; <тіло процедури>;
Імя процедури формується згідно з правилами побудови ідентифікаторів у Pascal.
Формальне оголошення функцій має вигляд:
FUNCTION (<список формальних параметрів> :)<тип результату>;
<розділ оголошень>; <тіло функції>;
На відмінну від процедур у функції обовязково задається тип її значення. В якості типу результату можуть бути скалярні типи, рядки, множини, вказівники. В розділі операторів обовязково повинен бути присутній хоча б один оператор присвоєння ідентифікатору функції деякого значення, що і буде результатом функції.
20. Загальна характеристика візуальних компонентів. Властивості. Події. Методи.
Основою створення проектів у Delphi є компоненти, розміщені у спеціальній бібліотеці візуальних компонентів (VCL, Vi-sual Component Library). З погляду програмування компоненти це обєкти (або екземпляри) певного класу, які мають властивості та методи, що між собою тісно повязані. Зміна властивості ініціює неявний виклик відповідного методу, а виконання методу часто змінює властивості компонента. Для кожного компонента спроектовано список подій, на які він реагує.
Методи це процедури і функції, призначені для опрацювання полів. Опис методу схожий на опис звичайної підпрограми модуля. Заголовок методу розміщується в описі класу, а сам код методу знаходиться в розділі реалізації модуля. Назва методу в розділі реалізації є складовою і включає в себе назву класу.
Властивості займають проміжне положення між полями і методами. З одного боку, властивості обєкта можна використовувати як поля, наприклад, їм можна надати значення за допомогою оператора присвоєння; а з іншого всередині класу доступ до значень властивостей виконується методами класу. Кожній властивості відповідає поле, що містить її значення, і два методи, що забезпечують доступ до цього поля (читання/запис значень).
Подія це спеціальна властивість типу TNotifyEvent.
21.Компонет введення і редагування інформації.
22. Форма головний компонент додатку. Характеристики форми.
Форма це вікно для конструювання розв'язку. Увесь внутрішній простір є робочою ділянкою, яка може бути покрити крапчатою сіткою для вирівнювання компонентів. На форму наносять усі необхідні компоненти. Після цього їхнім власти востям надають потрібних значень. Програма створюється напівавтоматично у вигляді модуля користувача Unitl.pas, що відображається в окремому вікні. Під час додавання у форму нових компонентів у модуль Unitl.dfm автоматично додаються команди з їхніми описами. Якщо для компонента задати подію, то у модуль Unitl.pas автоматично записується шаблон (заготовка) процедури, яка складається із заголовка процедури і стандартних слів begin та end. Шаблон заповнює користувач командами. Модуль закінчується власною командою end. Активізувати форму чи перейти від редагування модуля до конструювання можна за допомогою клавіші F12 або миші.
23. Організація взаємодії форм в делфі програмі.
24. Організація додатків в делфі. Створення багатодокументних додатків.
25. Робота з графікою в делфі. Рисування при виконанні програм.
Можливості графіки в системі Delphi реалізовані через так званий дескриптор контексту графічного пристрою DC і три його інструменти -шрифт, перо, пензель. Відповідно до цього в Delphi створені класи, що дають змогу використовувати графічні інструменти Windows: для контексту - клас TCanvas, для шрифту - TFont, для пера - ТРеп, для пензля --TBrush. Пов'язані з цими класами об'єкти автоматично створюються для всіх видимих елементів і стають доступними "через властивості Canvas, Font, Pen, Brush. Canvas (канва, полотно) - це площа видимого елемента, на якій можна малювати. Вона є однією з властивостей видимого елемента, Font, Pen та Brush є підвластивостями в Canvas. Pen (перо) - це лінія, яка виділяє зовнішній контур фігури. Можна задавати товщину, колір, вигляд (тип) такої лінії. Brush (пензель) - це площина фігури, тобто внутрішня від контура частина. Можна задавати колір площини фігури та спосіб зафарбовування, наприклад, горизонтальними чи діагональними лініями. Font -• використовують для вибирання шрифтів, які застосовують під час виведення тексту за допомогою методів TextOut або TextRect об'єкта Canvas. У процесі розробки проекту властивість Canvas недоступна у вікні Object Inspector. Не всі компоненти мають властивість Canvas, наприклад, її не мають панелі - компоненти типу ТРапеІ. Однак і на таких компонентах можна малювати, розмістивши на них спеціальну компоненту типу TPaintBox, яка власне і призначена для малювання. Крім того, об'єкти PaintBox можна використовувати для обмеження на формі чи на деякій компоненті ділянки малювання одним чи декількома прямокутниками. Коротка характеристика властивостей та методів Клас ТРеп: Color - колір лінії; Width - товщина лінії в пікселях; Style - стиль (зображення) лінії; Mode - метод малювання лінії, тобто спосіб накладання кольору лінії на поверхню. Клас TВrush: Color - колір зафарбовування; Style - спосіб зафарбовування внутрішньої площини фігури. Клас TFont; Name - назва шрифту, наприклад, АгіаІ; Style - стиль шрифту: грубий, курсив, підкреслений, перекреслений; Color - колір шрифту; Size - розмір шрифту в пунктах. Клас TCanvas: Pen, Brush, Font- визначено вище; Pixels двовимірний масив точок для доступу до окремих пік селів об'єкта Canvas. Крім того, є низка методів для малювання різноманітних фігур: Arc, Chord, Ellipse, LineTo, FillRect, Draw, Polygon, Rectangle тощо.
26. Структуровані типи даних Object Pascal. Множини
Множина структурований тип даних, елементами якого є всі підмножини, побудовані на основі елементів базового типу. Це впорядкований набір різхних обєктів одного типу. У Паскалі допускаються тільки скінченні множини, що складаються не більш ніж з 256 різних елементів. Всі елементи мають бути значеннями одного порядкового типу, який називають базовим типом цієї множини. Базовий тип можна задати діапазоном або переліком з урахуванням допустимої кількості елементів і того, що елементи мають лежати у діапазоні від 0 до 255. Зі стандартних типів як базові підходять типи Byte і Char. Скінченні множини задаються переліком їхніх елементів. У Паскалі елементи множини беруть у квадратні дужки. Множина може, взагалі, не мати елементів, тобто бути порожньою, тоді її зображують конструкцією []. У програмі опис множини має вигляд: <імя типу(ідентифікатор)>set of(множина із)<базовий тип(будь-який порядковий тип, крім word, integer, longInt)> Множина будується конструктором список сталих, виразів, типів, діапазон базового типу, взятих у квадратні дужки. Операції над множинами: 1) ∩перетин А*В спільне А і В; 2) ∪обєднання А+В ел А доповнюють ел В, яких немає в А; 3) різниця \А-В мн елем А, яких немає в В; 4) належність Є А>B, A<B, A=B. пошук даних у множині: IF<елемент>IN<множина>THEN <команда 1>ELSE<команда 2>. Пять операцій у таблиці операції відношення. Вони двомісні і повертають логічне значення true або false.
Математичний запис |
Запис у Паскалі |
Коментар |
А=В |
А = В |
Множини А і В збігаються |
А≠В |
А <> |
Множини А і В не збігаються |
А⊇В |
А >= В |
Всі елементи множини В нале-жать множині А |
А⊆В |
А <= В |
Всі елементи множини А нале-жать множині В |
х∈ А |
х in А |
Значення х належить базовому типу множини А і входить у А |
27. Структуровані типи даних Object Pascal. Записи.
Запис - це структура даних, що складається з фіксованої кількості компонентів, званих полями запису. На відміну від масиву компоненти (поля) запису можуть бути різного типу. Щоб можна було посилатися на той або інший компонент запису, поля іменуються. Структура оголошення типу запису така: <имя типа> = record <сп.полей> end; Тут <имя типа> - правильний ідентифікатор; record/ end - зарезервовані слова {запис, кінець); <сп.полей> - список полів; є послідовністю розділів запису, між якими ставиться крапка з комою. Кожний розділ запису складається з одного або декількох ідентифікаторів полів, відокремлюваних один від одного комами. За ідентифікатором ставиться двокрапка і опис типу поля. До кожного з компонентів запису можна дістати доступ, якщо використати складове ім'я, тобто вказати ім'я змінної, потім крапку і ім'я поля:a.day := 27; Щоб спростити доступ до полів запису, використовується оператор приєднання with: with <змінна> do <оператор>; Тут with, do - зарезервовані слова (з, робити); <змінна> - ім'я змінної типу запис, за яким, можливо слідує список вкладених полів; <оператор>- будь-хто оператор Object Pascal. Список полів може складатися з двох розділів: постійної і варіантної частини (case). Варіантної частини запису може й не бути. У постійній частині йде перелік назв полів запису з вказівкою їхніх типів. У списку_значень варіантної частини запису вказують одне або декілька значень (розділених крапкою з комою) заданого простого типу, а варіант це розділений крапками з комами список можливих полів, які не задані у постійній частині запису. Поля_вибору може й не бути. Якщо воно є, то його сприймають як постійне поле запису. Якщо його немає, вказують тільки тип, який має бути порядковим, але він не впливає ні на кількість перерахованих нижче значень, ні на типи цих значень. Всі варіанти розміщують в одному і тому ж місці памяті, якого виділяють стільки, скільки потрібно для максимального за розміром варіанта. Це приведе до того, що зміна одного варіантного поля впливатиме на всі інші: збільшаться можливості перетворення типів.
28.Анімація в делфі.
Чергування засвічувань і гасінь зображення використовують для імітації руху цього зображення на екрані. Перед наступним засвічуванням об'єкт треба змістити у напрямку переміщення. Рух зображення на екрані називається анімацією. Для імітації руху об'єкта на екрані потрібно виконати такий циклічний алгоритм. 1)Нарисувати об'єкт у потрібній точці й зробити паузу. 2)Знищити об'єкт, замалювавши його кольором тла. 3)Змінити координати об'єкта. 4)Перейти до пункту 1. Недоліком програми є миготіння замальованого зображення.
29. Структуровані типи даних Object Pascal. Масив.
Масив скінченний набір одного типу, які зберігаються в послідовно розташованих комірках памяті і мають спільне імя. Тип масиву описують таким чином: назва_типу_масиву = array [діапазони_індексів] of тип_елемента_масиву; Як тип елемента масиву можна використати будь-який тип Паскаля крім файлового. Діапазони індексів це один діапазон або декілька діапазонів, які перераховані через кому. Як діапазони індексів не можна використати діапазони з базовими типами LonWord чи Int64. 1)Одновимірний масив: var<імя мвсиву>ARRAY[1..n]OF<тип елементів масиву>, де n к-ть елементів в масиві; n,m попередньо визначені величини(числа). 2) двовимірний масив: var<імя мвсиву>ARRAY[1..n, 1..m]OF<тип елементів масиву>, n к-ть рядків, m- к-ть стовпців. Елементи масиву позначають: 1) <назва масиву>[впорядкований номер елементу] одновимірний масив 2) < назва масиву >[номер рядка, номер стовпця] двовимірний масив. Копіювання всього вмісту лдного массиву в інший того ж типу виконується єдиним способом: <імя масиву, в який копіюють>:=<імя масиву, з якого копіюють>.
30. Опрацювання текстових даних.
Тип даних string. Сьогодні комп'ютери застосовують для розв'язування задач опрацювання інформації, заданої у текстовому вигляді. Розглянемо нечислові типи даних: char і string. Нагадаємо, що односимвольне текстове дане, наприклад, s чи '2' належить до стандартного типу char, а багатосимвольні дані довжини від 0 до 255 символів до типу string. Дані типу string називають рядками, або текстовими даними. Текстові сталі записують в одинарних лапках, наприклад, розділ сталих у деякій програмі може мати такий вигляд: const а = 'Роман'; b = 'Петрович'; c ='2001'. Текстові змінні, довжина яких не перевищує числа n, де n<256, оголошують у розділі var так:var <список змінних> : string[n]. Над текстовими даними визначені операції з'єднання (+), присвоєння (:=), порівняння (=, <>,>,<, <=,>=), введення- виведення, а також текстові функції та процедури. Функції.Чотири найважливіші функції, визначені над даними типу string. Нехай А, В це змінні чи сталі типу string. 1)Length(A) дає кількість символів у заданому рядку А; 2)Сору(А,р,m) це копія m символів рядка А, починаючи від символу з номером р; 3)Pos(A, В) дає номер символу, з якого починається входження рядка А у рядок В;4) Concat(A, В,...) з'єднує рядки в один рядок. Процедури. Є 4 процедури для роботи з текстовими даними. Insert(A:string, var B:string, p: integer) вставляє рядок А у рядок В,починаючи від позиції p. Delete(var B:string, p:integer, m:integer) вилучає m символів з рядка В, починаючи від позиції p. Str(C: integer, var B:string) переводить числове дане С у данеВ типу рядок. Val(A:string, var C,D:integer) засилає у числову змінну С числовий образ рядка А.
31. Файли та робота з ними в делфі
Файл це сукупність логічно повязаних та організованих певним чином даних на зовн носії інформації. Файл має 3 особливості: 1)імя. 2)компоненти файла мають однаковий тип. 3)довжина файла обмежується тільки ємністю пристрою на якому він розміщується. За способом організації і доступом до компонентів файли можуть бути з послідовним і прямим методом доступу. Для доступу до деякого компонента у послідовному файлі потрібно переглядати всі компоненти розміщені перед ним. У файлі з прямим методом доступу будь-який компонент доступний безпосередньо. ОПаскаль 3 види файлів: текстові, типізовані, не типізовані. Програма працює з логічним файлом, який на етапі її виконання звязується з реальним фізичним файлом. Логічний файл або файлова змінна описується в програмі одним із 3-ох способів: 1) var<імя>Text File; 2) var<імя>File of<тип>;3) var<імя>File. Важливо що в ОПаскаль нема засобів контролю виду файла і описаною файловою змінною. Однак будь-який файл можна відкрити як нетипізований і працювати з ним. Файл стає доступний програмі після виконання процедури його відкриття, яка звязує файлову змінну з фізичним файлом і відкриває його для читання або записування.1) звязок між іменами ф-лу в програмі та на диску: 1)ASSIGN(<імя файлу>,<зовнішнє імя>); 2)Reset відкриває існуючий файл.
47. Динамічні структури даних. Вказівники.
Дані, які використовуються в програмі поділяються на статичні і динамічні. Статичні структури даних розміщені в статичній памяті, виділеній компілятором в процесі компіляції програми. Їх взаєморозміщення, взаємозвязки елементів і к-ть завжди залиш сталими в процесі виконання прграми. Динамічні структури даних розміщені в динамічній памяті ,яка виділ в етапі виконання програми(при необхідності). Їх внутрішня побудова формується за деяким законом, а їх взаєморозміщення, взаємозвязок елементів і к-ть можуть динамічно змінюватися в процесі виконання програми. Для роботи з динамічними даними використовують вказівники. Вказівник статична змінна, значенням якої є адреса памяті. За допомогою вказівників можна розміщувати в динамічній памяті будь які типи даних. Такі вказівники наз типізованими. Для опису цього вказівника викор знак «^», який записується перед відповідним типом(Type Iank=record; P,I,b:string[15]; rn:word; ps:string[20];end// var V1,S1:^integer; V2:^double; V3:^Iank; P1,P2:Pointer;) Можна описати вказівник і не звязувати його з конкретним типом даних. Для цього є стандартний тип Pointer. Такі вказівн наз нетипізованими. З їх допомогою зручно працювати з динамічними даними структури, і тип яких змінюється при виконанні прграми. Він може бути в 3-ох мтанах: 1)визначений(містить адресу змінної, для якої виділена память); 2)невизначений( до першого присвоєння або після звільнення памяті); 3) помічений зарезервованим символом NIL( не вказує ні на які дані). Значеннями вказівників є адреси змінних, розміщені в динамічній памяті. Для них допустима операція присвоєння, якщо вони вказують на один і той же тип даних. Типізованому вказівнику можна присвоювати значення не типізованого(V1^:=5; S1^:=V1^). Вся динамічна пам'ять розглядається як суцільний масив байтів, який наз купою. NEW резервує пам'ять для розміщення змінної і записує у типізований вказівник адресу першого байта. Dispose повертає в купу фрагмент динамічної памяті, який був зарезервований за вказівником р. якщо вказівник р невизначений, то фіксується помилка.
48. Додатки з декількома формами і формами MDI.
У віндовс є 2 основні типи документів:1)однодокументні(SDI однодокум інтерфейс), 2)багатодокументні(MDI багатодокум інтерф.). Однодокум скл з 1 або декількохіорм, які відносно не залежні одна від другої. В SDI додатку ні одне вікно на екрані візуально не містить в собі інші вікна, тому інколи неясно, яке з них є головним(батьківським). В багатодок додатку головне вікно містить дочерні вікна, які розміщуються в його межах. Порядок виконання дій для створення програми блокноту як додатка MDI:1)File>New; 2) Progect вікна New Ites виділ піктограму MDI Application >Ok. 3) зберігаю. 4) с-ма делфі генерує копію шаблону додатку MDI і відкриває його. 5) <shift + F12> View Form, виділяю всі форми- Ok- появляються всі форми проекту. 6) виділяємо форму About Box , змінюю на ній надписи, видаляю зображення Image. 7) виділяю форму MDI child, задаю власт Height I Width. Власт Border style встановлюю в bsSinle. 8) виділяю обл. memo1 і встановл значен властивостей: Властивість значення; name memo1; align alnone; Height 150; Top 72; Word Wrab True. 9) Добавити на форму компоненти і встановити їх властивості. 10) Виділяю форму frmMainForm, змінюю значення властив Caption на блокнот. 11) в модулі Main.pas змінити код обробника події FilenewExecute таким чином: procedure Tmain Form. FilenewExecute(sunder:TObgect); begin creat MDI child(Блокнот+int To str(MDI child count +1)); end; 12)File >Save all.