ПЕРЕЛІК ДИСЦИПЛІН:
  • Адміністративне право
  • Арбітражний процес
  • Архітектура
  • Астрологія
  • Астрономія
  • Банківська справа
  • Безпека життєдіяльності
  • Біографії
  • Біологія
  • Біологія і хімія
  • Ботаніка та сільське гос-во
  • Бухгалтерський облік і аудит
  • Валютні відносини
  • Ветеринарія
  • Військова кафедра
  • Географія
  • Геодезія
  • Геологія
  • Етика
  • Держава і право
  • Цивільне право і процес
  • Діловодство
  • Гроші та кредит
  • Природничі науки
  • Журналістика
  • Екологія
  • Видавнича справа та поліграфія
  • Інвестиції
  • Іноземна мова
  • Інформатика
  • Інформатика, програмування
  • Юрист по наследству
  • Історичні особистості
  • Історія
  • Історія техніки
  • Кибернетика
  • Комунікації і зв'язок
  • Комп'ютерні науки
  • Косметологія
  • Короткий зміст творів
  • Криміналістика
  • Кримінологія
  • Криптология
  • Кулінарія
  • Культура і мистецтво
  • Культурологія
  • Російська література
  • Література і російська мова
  • Логіка
  • Логістика
  • Маркетинг
  • Математика
  • Медицина, здоров'я
  • Медичні науки
  • Міжнародне публічне право
  • Міжнародне приватне право
  • Міжнародні відносини
  • Менеджмент
  • Металургія
  • Москвоведение
  • Мовознавство
  • Музика
  • Муніципальне право
  • Податки, оподаткування
  •  
    Бесплатные рефераты
     

     

     

     

     

     

         
     
    Програмування на Object Pascal у середовищі Delphi
         

     

    Інформатика, програмування

    Лабораторна робота № 1

    Програмування лінійних алгоритмів

    Мета лабораторної роботи: вивчити основні елементи візуального середовища,освоїти використання найпростіших компонентів DELPHI для введення/виводуданих, і створити додаток, що використовує лінійний алгоритм.

    1.1.Візуальная середу DELPHI

    При запуску DELPHI на екрані з'являється панель інтерфейсу,показана на рис. 1.1. Середа DELPHI візуально реалізується у виглядідекількох одночасно розкритих на екрані монітора вікон. Кількість,розташування, розмір і вигляд вікон може змінюватися програмістом.

    Головне вікно завжди присутня на екрані і призначене дляуправління процесом створення додатку.

    Головне меню містить всі необхідні засоби для керуванняпроектом.

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

    Палітра Компонентів забезпечує доступ до набору бібліотечнихпрограм середовища DELPHI, які описують певні елементи (компонент),поміщений програмістом у вікно Форми. Кожен компонент має певнийнабір властивостей, які програміст може вибирати і змінювати на свійрозсуд. Наприклад, заголовок вікна, напис на кнопці, розмір, колір і типшрифту і ін Властивості компонентів наведені в HELP.

    Вікно Інспектори Об'єктів призначене для зміни властивостейобраних компонентів і складається з двох сторінок. Сторінка Properties
    (Властивості) призначена для зміни необхідних властивостей компонента.
    Сторінка Events (Події) - для визначення реакції компоненту на те чиіншу подію (наприклад, натискання кнопки "миші ").

    Вікно Форми представляє собою інтерфейс проектованого Windows -додатки. У це вікно на етапі проектування програми поміщаютьсянеобхідні компоненти, які розробник бере з палітри компонентів.
    Кожній Форме проекту відповідає модуль (Unit), текст якого на мові
    Object Pascal розміщується у вікні Редактора коду.

    Вікно Редактора Коду призначений для перегляду, створення іредагування текстів модулів проекту. При початковій завантаженні у вікні
    Редактора Коду знаходиться текст модуля, що містить мінімальний набіроператорів для нормального функціонування порожній Форми як Windows -додатки. При розміщенні деякого компонента у вікні Форми, текст модуляавтоматично доповнюється необхідними операторами.

    Про всі відбуваються в системі, таких як створення Форми,натискання на кнопку миші або клавіатури і т.д., ядро Windows інформує вікнашляхом надсилання відповідних повідомлень. Середа DELPHI приймає іобробляє повідомлення за допомогою обробників подій (наприклад, клацаннякнопки "миші" - подія OnClick, створення Форми - OnCreate). Найчастішезастосовувані події представлені в табл. 1.1.

    | Таблиця 1.1 |
    | Подія | Опис події |
    | OnActivate | Виникає при активізації Форми |
    | OnCreate | Виникає при створенні Форми. У обробнику даної події |
    | | Слід задавати дії, які повинні відбуватися в |
    | | Момент створення Форми, наприклад установка початкових |
    | | Значень. |
    | OnClick | Виникає при натисканні кнопки миші в області компонента. |
    | OnDblClick | Виникає при подвійному натисканні кнопки миші в області |
    | | Компоненту |
    | OnKeyPress | Виникає при натисканні клавіші на клавіатурі. Параметр Key |
    | | Має тип Char і містить ASCII-код натиснутою клавіші |
    | | (Клавіша Enter клавіатури має код # 13, клавіша Esc - # 27 |
    | | І т.д.). Зазвичай ця подія використовується в тому випадку, |
    | | Коли необхідна реакція на натискання однієї з клавіш. |
    | OnKeyDown | Виникає при натисканні клавіші на клавіатурі. Оброблювач |
    | | Цієї події отримує інформацію про самій клавіші і |
    | | Стані клавіш Shift, Alt і Ctrl, а також про натиснутою |
    | | Кнопці миші. |

    Для створення обробника події програмісту необхідно розкритисписок компонентів у верхній частині вікна Інспектори Об'єктів і вибратинеобхідний компонент. Потім, на сторінці Events Інспектори Об'єктів,натисканням лівої клавіші миші вибрати назву обробника і двічі клацнутиза його правою (білою) частини. У відповідь DELPHI активізує вікно Редактора
    Коду модуля і покаже заготівлю процедури обробки вибраного події. Длякожного оброблюваного події в тексті модуля організується процедура
    (procedure), між ключовими словами begin та end якій програміст намовою Object Pascal записує потрібний алгоритм обробки події.

    Переключення між вікном Форми і вікном Редактора Коду здійснюєтьсякнопкою головного меню з піктограмою або клавішею F12.

    1.2. Приклад створення програми

    Завдання: створити Windows-додаток для обчислення виразу

    .


    Чисельні значення даних x, y і z занести з клавіатури у відповідніполя панелі інтерфейсу. Один з можливих варіантів панелі інтерфейсустворюваного програми показано на рис. 1.2.

    1.2.1. Збереження проекту

    У процесі проектування програми DELPHI створює кілька файлів
    - Проект. Кожен проект доцільно зберігати в окремій, заздалегідьствореної папці. За допомогою відповідного додатку Windows створимо папку іназвемо її, наприклад, LAB1.

    Для збереження проекту відкрийте в головному меню пункт File і клацніть
    "Мишею" на опції Save Project As ... (Зберегти проект як ...). Спочатку DELPHIвідкриє панель діалогу Save Unit1 As (Зберегти як модуль), щоб зберегтимодуля проекту. У цій панелі знайдемо створену папку LAB1 і збережемо в ніймодуль під ім'ям, наприклад, UnLinAlg. Зверніть увагу на те, що DELPHIза замовчуванням присвоїть цього файлу тип Delphi unit c розширенням *. pas.
    Потім відкриється панель діалогу Save Project1 As. Назвемо наш проект,наприклад, PrLinAlg і збережемо його у цій же папці. Тут DELPHI дасть файлутип Delphi project і розширення *. dpr. Переконайтеся в тому, що головне вікно
    DELPHI тепер називається PrLinAlg, вікно головного файлу проекту-
    PrLinAlg.dpr, а вікно модуля проекту-UnLinAlg.pas.

    Намагайтеся давати файлів осмислені імена замість одноманітних Unit1і Project1, пропонованих DELPHI.

    Щоб уникнути втрати файлів проекту в аварійних ситуаціях пов'язаних,наприклад, з виключенііем харчування, зависанні системи і т.д., рекомендуєтьсяперіодично зберігати проект, використовуючи піктограму головного менюабо опцію Save All в меню File.

    1.2.2. Налаштування вікон

    Щоб працювати з вікном, необхідно зробити його активним, клацнувши
    "Мишею" у будь-якому місці вікна. У активного вікна заголовок стаєвиділеним, наприклад, на рис. 1.1 активним є вікно Редактора Коду.

    Вікна Форми і Редактора Коду модуля в правому верхньому куті мають кнопкиуправління, які призначені:-для згортання вікна впіктограму,-для розгортання вікна на весь екран і повернення допочаткового розміру,-для закриття вікна.

    За допомогою "миші", захоплюючи одну з країв вікна або виділенурядок заголовка, відрегулюєте потрібні розміри вікон Форми, Редактора Коду,
    Інспектори Об'єктів і їхнє положення на екрані.

    1.2.3. Зміна заголовка Форми

    Нова Форма має однакові ім'я (Name) і заголовок (Сaption) -
    FORM1. Початківцям програмістам ім'я Форми міняти не рекомендується, тому що воновикористовується в тексті модуля.

    Для зміни заголовка активізуйте вікно Інспектори Об'єктів і насторінці Properties у властивості Caption замініть заголовок Form1 на

    Лаб. робота № 1-Лінійний алгоритм. Переконайтеся, що одночаснозмінився заголовок вікна Форми.

    1.2.4. Розміщення компонентів на Форме

    Будемо розміщувати компоненти на Форме так, щоб вони відповідалипанелі, що на рис 1.2.

    Для нанесення написів на Форму використовується компонент Label. Виберіть у
    Палітрі компонентів на сторінці Standard піктограму компонента Labelі клацніть на ній "мишею". Потім у потрібному місці Форми клацніть "мишею" --з'явиться напис Label1. У властивості Caption Інспектори Об'єктів замінітьнапис Label1 на Введіть X:. У властивість Font підберіть шрифт.
    Аналогічно нанесіть на Форму інші написи. Клацнувши "мишею" на будь-якому зрозміщених компонентів, відрегулюйте його місце розташування на Формі ірозмір.

    Для введення/виводу даних у найпростіших випадках використовуються компоненти
    Edit і Memo. Компонент Edit застосовується в тих випадках, коли даніподаються одним рядком. Якщо дані представляють собою кількастрок, то використовується компонент Memo.

    Для створення полів вводу чисельних значень змінних x, y та zвикористовуємо компонент Edit. Виберіть у палітрі компонентів на сторінці
    Standard піктограму і розмістите компонент Edit в потрібних місцях
    Форми так само, як Ви це робили з компонентом Label.

    Для виводу результатів використовуємо компонент Memo. Виберіть у палітрі
    Компонентів на сторінці Standard піктограму, помістіть компонент
    Memo на Форму і відкоригують його місце розташування і розміри.

    1.2.5. Написання процедури обробки події створення Форми (FormCreate)

    Якщо програміст бажає, щоб при появі панелі інтерфейсу наекрані у відповідних полях знаходилися початкові значення даних, вінповинен врахувати, що при запуску програми виникає подія - створення
    Форми (OnCreate). Створимо процедуру обробки цієї події, яказанесе початкові значення змінних x, y, z в поля Edit1, Edit2 і Edit3відповідно, а в полі Memo1 помістить рядок Лабораторна робота № 1 -
    Лінійний алгоритм. Для цього двічі клацніть на будь-якому вільному місці
    Форми. На екрані з'явиться текст модуля UnLinAlg, в якому DELPHIавтоматично створює заготівлю процедури-обробника події створення
    Форми: Procedure TForm1.FormCreate (Sender: TObject). Між операторами beginі end цієї процедури вставте оператори, які виконують необхіднідії (текст модуля наведений в п.1.2.7).

    1.2.6. Написання процедури обробки події натискання кнопки Button1

    (Button1Click)

    Помістимо на Форму кнопку, натискання якої приведе до обчисленнявирази. Виберіть у палітрі компонентів на сторінці Standart піктограму
     компонента Button. У властивості Caption Інспектори Об'єктів замінітьнапис на кнопці Button1 на Обчислити. У властивість Font підберіть шрифт.
    Відрегулюйте положення і розмір кнопки. Потім двічі клацніть "мишею" накнопці, після чого курсор встановиться в тексті процедури-обробникаподії натискання кнопки Button1: Procedure
    TForm1.Button1Click (Sender: TObject). Уважно наберіть оператори цієїпроцедури, використовуючи текст модуля UnLinAlg.

    1.2.7. Текст модуля UnLinAlg

    Unit UnLinAlg;

    interface

    uses
    Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
    StdCtrls;

    type
    TForm1 = class (TForm)

    Label1: TLabel;

    Edit1: TEdit;

    Label2 : TLabel;

    Edit2: TEdit;

    Label3: TLabel;

    Edit3: TEdit;

    Label4: TLabel;

    Memo1: TMemo;

    Button1: TButton; procedure FormCreate (Sender: TObject); procedure Button1Click (Sender: TObject); private

    (Private declarations) public

    (Public declarations) end;

    var
    Form1: TForm1;

    implementation

    ($ R *. DFM)
    //Процедура обробки події створення Форми:procedure TForm1.FormCreate (Sender: TObject);begin
    Edit1.Text: = '0 .4 ';// початкове значення X
    Edit2.Text: = '8 .75 e-2';// початкове значення Y
    Edit3.Text: = '-19.63' ;// початкове значення Z
    Memo1.Clear;// очищення Memo1
    //Висновок рядка в Memo1:
    Memo1.Lines.Add ( 'Лабораторна робота № 1 - Лінійний алгоритм');end;
    //Процедура обробки події натискання кнопки Button1:procedure TForm1.Button1Click (Sender: TObject); var x, y, z, a, b, c, u: extended;// оголошення локальних зміннихbegin x: = StrToFloat (Edit1.Text);// X присвоюється вміст Edit1 y: = StrToFloat (Edit2.Text);// Y присвоюється вміст Edit2 z: = StrToFloat (Edit3.Text);// Z присвоюється вміст Edit3 < br>//Обчислюється вираз a: = sqrt (x)-y * y * y; b: = sin (a)/cos (a); c: = Exp (5 * Ln (b)); u: = c + exp (y/z) * sin (z * z);
    Memo1.Lines.Add ( 'X =' + Edit1.Text + 'Y =' + Edit2.Text +
    'Z =' + Edit3.Text) ;// контрольний висновок X, Y, Z в Memo1
    // Вивід результату в Memo1:
    Memo1.Lines.Add ( 'U =' + FloatToStrF (u, ffFixed, 8,3));end;

    end.

    Дані, з якими працюють компоненти Edit і Memo, мають тип String.
    Тому в процедурі TForm1.Button1Click "присвоєнні вміст полів
    Edit1, Edit2, Edit3 змінним X, Y, Z c допомогою функції StrToFloatздійснюється перетворення даних типу String в дійсні значенняз плаваючою точкою типу Extended. Якщо необхідно працювати з данимицілого типу, використовується функція StrToInt.

    При виведенні даних у Memo1 використовується метод Add властивості Lines,причому для перетворення даних з дійсного значення в строкове іуправління формою подання виведеного результату використовується функція
    FloatToStrF.

    1.2.8. Робота з додатком

    Для запуску створеного програми, натисніть піктограму головногоменю або клавішу F9. При цьому відбувається компіляція модулів і, якщо немаєпомилок, компонування проекту та створення виконуваного файлу PrLinAlg.exe. Наекрані з'являється панель інтерфейсу додатку (ріс.1.2).

    Клацніть "мишкою" на кнопку "Обчислити" і в полі Memo1 з'являєтьсярезультат. Змініть вихідні значення x, y, z в полях Edit і знову натиснітькнопку "Обчислити". Переконайтеся, що в полі Memo1 відображаються новірезультати. Завершити роботу програми можна натисканням кнопки вправому верхньому куті панелі інтерфейсу.

    У разі нештатного функціонування програми відновитипочатковий режим роботи з проектом можна шляхом вибору в меню Run опції
    ProgramReset або натиснути клавіші Ctrl + F2.

    1.3. Виконання індивідуального завдання

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

    Індивідуальні завдання

    1.

    При x = 14.26, y =- 1.22, z = 3.5 (t = 0.564849.

    2.

    При x =- 4.5, y = 0.75 (, z = 0.845 u =- 55.6848.

    3.

    При x = 3.74, y =- 0.825, z = 0.16 v = 1.0553.

    4.

    При x = 0.4, y =- 0.875, z =- 0.475 w = 1.9873.

    5.

    При x =- 15.246, y = 4.642, z = 20.001 =- 182.036.

    -----------------------< br>3

    4


    5

    6

    Ріс.1.2


    Label1

    Label2

    Label3

    Рис.2.1
    1 - головне вікно; 2 - головне меню, 3 - піктограми головного меню,
    4 - вікно Інспектори Об'єктів; 5 - вікно Редактора Коду,

    6 - вікно порожній Форми; 7 - Палітра Компонентів.

    Label4

    2

    1

    7

    Edit1

    Edit2

    Edit3

    Button1

    Memo1

         
     
         
    Реферат Банк
     
    Рефераты
     
    Бесплатные рефераты
     

     

     

     

     

     

     

     
     
     
      Все права защищены. Reff.net.ua - українські реферати ! DMCA.com Protection Status