Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Дипломна робота

.pdf
Скачиваний:
161
Добавлен:
06.02.2016
Размер:
3.63 Mб
Скачать

Лістинг 2. Модуль програми Швидкість interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls;

type

TForm1 = class(TForm)

Edit1 TEdit;

Edit2 TEdit;

Label1 TLabel;

Label2 TLabel;

Label3 TLabel;

Button1 TButton;

Button2 TButton;

Label4 TLabel;

procedure Button2Click(Sender TObject); procedure Button1Click(Sender TObject); private

{Private declarations } public

{Public declarations } end;

var

Form1: TForm1;

s,t,v:real; // s - шлях, t -час, v -швидкість

implementation {$R *.dfm}

procedure TForm1.Button2Click(Sender: TObject); begin

Close; // завершити

82

end;

procedure TForm1.Button1Click(Sender: TObject); begin

s:=StrToFloat(Edit1.text); // попередні перетворення t:=StrToFloat(Edit2.text);

v:=s/t; // обчислення швидкості

label4.Caption:= 'Швидкість V= '+FloatTostr(v)+' км/год.'; // вивід результату end.

Починається модуль словом unit, за яким слідує ім'я модуля. Саме це ім'я

згадується в списку використовуваних модулів в інструкції uses головного модуля застосування, текст якого приведений в лістингу 1.

Модуль складається з наступних розділів:

-інтерфейсу;

-реалізації;

-ініціалізації.

Розділ інтерфейсу (починається словом interface) повідомляє компілятор, яка частина модуля є доступної для інших модулів програми. У цьому розділі перераховані

(після слова uses) бібліотечні модулі, використовувані даним модулем. Також тут знаходиться сформований Delphi опис форми, який слідує за словом type.

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

Починається розділ реалізації директивою {$R *.DFM}, вказуючою компілятору,

що в процесі генерації виконуваного файлу треба використовувати опис форми. Опис форми знаходиться у файлі з розширенням dfm, ім'я якого співпадає з ім'ям модуля.

Файл опису форми генерується середовищем Delphi на основі зовнішнього вигляду форми.

За директивою ($R *.DFM} слідують процедури обробки подій для форми і її компонентів. Сюди ж програміст може помістити інші процедури і функції.

Розділ ініціалізації дозволяє виконати ініціалізацію змінних модуля. Інструкції розділу ініціалізації розташовуються після розділу реалізації (описи всіх процедур і

83

функцій) між begin і end. Якщо розділ ініціалізації не містить інструкцій (як в приведеному прикладі), то слово begin не указується.

Слід зазначити, що значна кількість інструкцій модуля формує Delphi. Наприклад,

аналізуючи дії програміста по створенню форми, генерує опис класу форми (після слова type). Очевидно, що Delphi виконує значну частину роботи по складанню тексту програми.

2.2.4 Компіляція проекту та його виконання

Компіляція — це процес перетворення початкової програми у виконувану. Процес компіляції складається з двох етапів. На першому етапі виконується перевірка тексту програми на відсутність помилок, на другому — генерується виконувана програма (ехе-

файл). Після введення тексту функції обробки події і збереження проекту можна з меню

Project вибрати команду Compile і виконати компіляцію. Процес і результат компіляції відбиваються в діалоговому вікні Compiling. У це вікно компілятор виводить помилки

(Errors), попереджень (warnings) і підказок (Hints). Самі повідомлення про помилки,

попередження і підказки відображаються в нижній частині вікна редактора коду.

Після успішної компіляції запускаємо програму на виконання: натискаємо клавішу

F9 або кнопку Run на панелі інструментів.

2.2.5 Помилки

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

Щоб перейти до фрагмента коду, який містить помилку, треба встановити курсор в рядок з повідомленням про помилку і з контекстного меню вибрати команду Edit

source(Рис. 2.15)

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

Після чергового внесення змін до тексту програми виконується повторна компіляція.

Слід враховувати той факт, що компілятор не завжди може точно локалізувати помилку.

Тому, аналізуючи фрагмент програми, який, на думку компілятора, містить помилку,

84

потрібно звертати увагу не тільки на той фрагмент коду, на який компілятор встановив курсор, але і на той, який знаходиться в попередньому рядку.

Рис. 2.15 Перехід до фрагмента програми, що містить помилку

Найбільш типова помилка «Missing operator or semicolon (Відсутній оператор або крапка з комою)» і відповідна причина «Після інструкції не поставлена крапка з комою».

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

коли одна незначна помилка може "тягнути" за собою досить велику кількість інших.

Якщо в програмі немає синтаксичних помилок, компілятор створює виконуваний файл програми. Ім'я виконуваного файлу таке ж, як і у файлу проекту, а розширення — exe. Delphi поміщає виконуваний файл в той же каталог, де знаходиться файл проекту.

2.2.6 Внесення змін в код проекту

Після декількох запусків програми «Швидкість автомобіля» виникає внести зміни до програми. Зробити це можна звичайним способом, вибравши з меню File команду

Open Project. Можна також скористатися командою Reopen з меню File. При виборі команди Reopen відкривається список проектів, над якими програміст працював

останнім часом.

85

Наприклад, зробимо зміни Процедури обробки подій OnKeyPress для компонентів

Edit1 і Edit2. Слід звернути увагу на те, що для додавання в програму процедури обробки події потрібно у вікні Object Inspector вибрати компонент, для якого створюється процедура, потім на вкладці Events вибрати подію і зробити подвійне клацання в полі імені процедури. Delphi сформує шаблон процедури обробки події. Після цього можна вводити інструкції, що реалізовують процедуру обробки. Дана процедура буде має такий вигляд:

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char); begin

//Key — символ, який відповідає натиснутій клавіші.

//Якщо символ недопустимий, то процедура заміняє його

//на символ с кодом 0. В результаті цього символ в полі

//редагування не появляється, і у користувача створюється

//думка, що програма не реагує на натискання деяких

//клавіш.

case Key of

'0'..'9': ; // цифра

#8 : ; // клавіша

#13 : Edit2.SetFocus ; // клавіша

// решту символів — заборонені

else Key :=Chr(0); // символ не відображати end;

end.

Після внесення змін проект слід зберегти. Для цього потрібно з меню File вибрати команду Save all.

2.3 Бібліотеки стандартних мов програмування

2.3.1 Стандартні бібліотеки мови С та С++

Стандартна бібліотека С++ включає стандартну бібліотеку С з невеликими змінами, що роблять її більш придатною для мови С++. Інша більшість бібліотеки С++

полягає в С тандартної Бібліотеці шаблонів. Стандартна бібліотека шаблонів STL. Вона

86

надає такі важливі інструменти, як контейнери (наприклад: вектори і списки). З іншого боку,STL дозволяє аналогічно працювати з іншими типами контейнерів, наприклад,
асоціативними списками, чергами. Використовуючи шаблони, можна писати про спілкування алгоритмів, які можуть працювати із будь-якими контейнерами чи послідовностями, певних операторів.
Також, як й у С, можливості бібліотек активізуються використанням директиви
#include для включення стандартних файлів. Загалом у стандарті С++ визначено 50
таких файлів.
STL включення до стандарту С++ була сторонньою розробкою, на початку — фірми HP, та був SGI. Стандарт мови не називає її "STL", оскільки ця бібліотека стала невід'ємною частиною мови, проте багато людей досі використовують цю назву, щоб відрізняти її від решти стандартної бібліотеки. Проект під назвою stlport.org/STLport,
заснований на SGISTL, здійснює постійне відновлення STL, IОstream істрокових класів. Деякі інші проекти також займаються розробкою приватних застосувань стандартної бібліотеки щодо різноманітних конструкторських завдань. Кожен виробник компіляторів С++ обов'язково поставляє якусь реалізацію бібліотеки, оскільки він є дуже важливою частиною цьогорічного стандарту широко використовується.
Стандартна бібліотека мови програмування — це набір функцій і процедур,
доступних для виклику з програми, написаної цією мовою. У окремих випадках стандартна бібліотека описується у стандарті мови Python, Perl, Java, у деяких — окремими стандартами С визначається з практичнї наявності функції в реалізаціях мови
Basic, Pascal.
Залежно від можливостей мови, стандартна бібліотека може містити:
процедури й функції макроси
глобальна змінна та глобальні перемінні
класи програмування
програмування за допомогою шаблонів Зазвичай стандартна бібліотека містить основні алгоритми і структури даних,
необхідних для:
роботи з динамічно розподіленою пам'яттю
87

файловими операціями виводу-вводу

операціями вводу-виводу даних до терміналу

конвертацією даних між типами

функції до роботи із рядками

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

функції до роботи з мережею

функції для забезпечення обробки винятків і прямих помилок у програмі Існують два підходи визначення кола завдань, які має виконувати стандартна

бібліотека мови програмування.

1.Стандартна бібліотека повинна містити у собі ті процедури і функції, що використовуються та володіють максимальною універсальністю. Зокрема, цю позицію дотримувався Бьярне Страуструп (автор мови С++).

2.Стандартна бібліотека повинна містити у собімаксимально-можливу кількість типових алгоритмів, забезпечуючи простоту роботи з більшістю об'єктами, із якими може взаємодіяти програма. Однією з прикладів цього принципу є мова Python,

Структура бібліотеки

У бібліотеці виділяють п'ять основних компонентів:

1. Контейнер (container) - зберігання набору об'єктів у пам'яті. 2.Итератор (iterator) - забезпечення коштів доступу до контейнера. 3. Алгоритм (algorithm) - визначення обчислювальної процедури.

4.Адаптер (adaptor) - адаптація компонентів для забезпечення різного інтерфейсу. 5. Функціональний об'єкт (functor) - приховування функції в об'єкті від

використання іншими компонентами.

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

2.3.2 Довідкова служба

Довідкова служба(Справка)(Рис.2.16) – це служба яка є в кожній програмі та операційній системі. Ця служба працює як інструкція для програм чи операційних систем. В ній містяться такі пункти:

88

Словник. Зручний пошук слів і фраз, наприклад у словнику Microsoft Encarta. Під час роботи не потрібно звертатися до друкованих або електронних версій словника,

відволікаючись. Словник Encarta містить близько 400000 статей та багато визначень слів,

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

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

клацнувши результат пошуку, або скористатися тезаурусом для іншої мови.

Енциклопедія. Пошук потрібного поняття в енциклопедії Microsoft Encarta.

Введіть запитання й перегляньте результат пошуку. У списку результатів можна переглянути зведення або відкрити посилання на додаткові відомості в MSN.

Переклад. Швидкий переклад із використанням двомовних словників на комп’ютері або в Інтернеті, а також машинного перекладу на веб-вузлі. За допомогою двомовних словників можна перекладати окремі слова або короткі фрази. Служби машинного перекладу дають змогу перекладати речення, абзаци або цілі документи.

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

Спеціальні дії визначаються смарт-тегами, розташованими на вашому комп’ютері.

Цей засіб доступний не для всіх мов.

Докладні відомості про компанії надаються службою Gale — постачальником інформації про діяльність компаній. В області завдань довідкові матеріали можна отримати відомості щодо галузі діяльності компанії та основні дані про неї, контактні відомості та інші дані.

Служби сторонніх виробників. Якщо додати до списку довідкових служб служби сторонніх виробників, система Microsoft Office надаватиме користувачеві найбільш підхожі відомості з цих джерел на основі області пошуку та характеру запитання. До

89

таких служб належать, наприклад, Factiva (новини), eLibrary (новини та періодичні публікації), Gale (профілі організацій) та WorldLingo (послуги з перекладу).

Вузли в мережі. Якщо ваша організація має власну мережу, її вузли можна для полегшення доступу додати до області завдань довідкові матеріали. Також підтримуються вузли Microsoft Office SharePoint Portal Server 2003. Щоб додати вузол

SharePoint Portal Server до списку «Усі портали та вузли інтрамережі», введіть у діалоговому вікні Додавання служб адресу http://ваш кореневий каталог/_vti_bin/search.asmx.

Пошук в Інтернеті. Пошук в Інтернеті одночасно з роботою над документом за допомогою засобу MSN-пошуку. Щоб отримати додаткові відомості з Інтернету, можна

клацнути на посилання.

90

Рис. 2.16 Довідкова служба(Справка) в текстовому редакторі «Блокнот»

2.4Прикладне програмне забезпечення

2.4.1Класифікація прикладного програмного забезпечення.

Прикладне програмне забезпечення(Рис. 2.17) призначене для користувачів, що не створюють своїх програм, а лише використовують програмні засоби для вирішення певних задач. На відміну від програмістів, таких користувачів називають “кінцевими“.

Вважається, що саме вони і є справжніми споживачами тої інформації, що зосереджена в

91