Смекни!
smekni.com

Програма візуальної демонстрації пошуку елементів у масиві (стр. 2 из 3)

Нижче буде проведено опис і характеристика основних процедур

1. Процедура ТSerPF. FillBorders виконує функцію кнопки Refresh тобто генерує елементи в масиві.

Procedure TSerPF. FillBorders;

Var C, R: Integer;

Begin

RefreshK;

SG. Cells [0,0]:='A [K, N]';

For C:=1 To KC. Value do

Begin

SG. Cells [C, 0]:='A [1,'+IntToStr(C)+']';

End;

For R:=1 To KR. Value do

Begin

SG. Cells [0, R]:='A ['+IntToStr(R)+', 1]';

End;

End;

2. Процедура TSerPF. FillData заповнює масив елементами – цифрами, які розташовуються безладно у відповідних комірках.

Procedure TSerPF. FillData;

Var C, R: Integer;

begin

Randomize;

For C:=1 To KC. Value do

Begin

For R:=1 To KR. Value do

Begin

SG. Cells [C, R]:=IntToStr (Random(1000) – 500);

End;

End;

End;

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

Procedure TSerPF. FillData2;

Var C, R: Integer; S: String;

begin

S:='АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ';

Randomize;

For C:=1 To KC. Value do

Begin

For R:=1 To KR. Value do

Begin

SG. Cells [C, R]:=S [Random(33)];

End;

End;

End;

4. Процедура TSerPF. Search виконує пошук елемента у масиві при його знаходженні виводиться повідомлення: 'Запись найдена'

Procedure TSerPF. Search;

Var C, R: Integer;

MR: TGridRect;

Begin

For C:=L To KC. Value do

Begin

For R:=T To KR. Value do

Begin

If SG. Cells [C, R]=TFS. Text then

Begin

If C=KC. Value then

Begin

L:=1;

T:=R+1;

End

else

Begin

L:=C+1;

T:=R;

End;

If (R=KR. Value) and (C=KC. Value) then

Begin

T:=1;

L:=1;

End;

MR. Left:=C;

MR. Top:=R;

MR. Right:=C;

MR. Bottom:=R;

SG. Selection:=MR;

ShowMessage ('Запись найдена');

Caption:='Top'+Inttostr(T)+'; Left'+inttostr(L)+'; C'+inttostr(C)+'; R'+inttostr(R);

break;

End;

End;

End;

End;

5. Процедура TSerPF працює таким чином, якщо тексту немає, то виконується умова, якщо немає ні '?', ні '*', то виконується процедура Search тобто простий або звичайний пошук, Якщо ж виявляється '?', то відбувається пошук з процедури SearchV, відповідно, якщо ж '*', то SearchZ, якщо '?' і '*' – SearchVZ

інакше повідомлення ShowMessage ('Введите текст котрий следует искать!');

procedure TSerPF. Button1Click (Sender: TObject);

begin

If TFS. Text<>'' then

Begin

If (Pos ('?', TFS. Text)<1) and (Pos ('*', TFS. Text)<1) then Search;

If (Pos ('?', TFS. Text)>0) then SearchV;

If (Pos ('*', TFS. Text)>0) then SearchZ;

If (Pos ('?', TFS. Text)>0) and (Pos ('*', TFS. Text)>0) then SearchVZ;

end

else

ShowMessage ('Введите текст котрый следует искать!');

end;

Лістинг програми приведений в додатку А.

7. Реалізація проекту у візуальному середовищі

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

У Delphi програмні модулі позначаються словом «Unit», кожен з цих програмних модулів містить текст програми. Усі процедури та функції головної форми описуються у модулі Unit1. Компоненти вікна форми тестової програми описуються у Unit2. Вікно форми про програму належить до Unit3. Також на формі міститься кнопка «Вихід», тобто виходу з програми.

Для вдосконалення роботи даного проекту можна внести свої змінні у функції чи процедури програми, за допомогою добавлення нових чи вдосконалення існуючих команд. У головній формі «Form» відображено інтерфейс користувача, тобто набір кнопок, полів, картинок. Кожен об’єкт має свій програмний код, який відображено в Unit. Тому можна зробити висновок, що у Unit здійснюється реалізація програми, а у Form здійснюється візуальне її оформлення.

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

1. Запуск на виконання Delphi 7 для створення нового проекту (Пуск – Програми – Borland Delphi 7 – Delphi 7)

2. Створення 3-ох форм: Form1, Form2, Form3 (Form1 створюється автоматично при завантаженні Delphi, для створення іншої форми потрібно на панелі інструментів обрати New Form, або в меню Form – New – Form).

3. Встановлення властивостей для Form1, Form2 Form3 згідно до розділу 5 Розробка інтерфейсу роботи з користувачем.

4. Встановлення компонентів та їх властивості для Form1, Form2, Form3.

5. Введення програмного коду, який наведений у Додатку А.

6. Зберегти проект (File – Save All, або за допомогою комбінації клавіш Shift+Ctrl+S), вказавши ім’я файлу проекту, для решти файлів імена при збереженні змінювати не потрібно.

7. Після виконання усіх попередніх пунктів дану програму потрібно відкомпілювати (F9, або за допомогою меню Run – Run).

8. Після виконання усіх попередніх пунктів дану програму потрібно відкомпілювати (F9, або за допомогою меню Run – Run).

У проекті присутні велика кількість компонентів, для їх функціонування необхідно змінити певні властивості:

Таблиця 3 – Властивості компонентів Форми SerPak

Назва копонентів Властивості назва
Button1 Caption ‘Працювати’ Працювати
Height 30
Width 110
name work
Button2 Caption Про програму
Height 30
name about
Width 130
Button3 Caption Вийти
Width 120
name exit
Height 30
Lable1 Caption Привіт
transparent true
Lable2 Caption Вас вітає програма
Aligment taCenter
transparent true

Параметри шрифту для візуальних комронентів форми SerPak, таких як:

Lable1, Button потрібно встановити наступним чином, назва шрифту =MS Sane Serif, розмір = 14. для решти компонентів цю властивість змінювати не потрібно.

Таблиця 4. Властивості компонентів форми SerPok

Назва копонентів Властивості що необхідно змінити Значення
Button1 Height 30
Width 110
name OK
Lable1… Lable6 transparent true
Image1 Width 561
Height 513

Параметри шрифту для візуальних комронентів форми SerPak, таких як:

Lable, Button, RadioButton, GroupBox потрібно встановити наступним чином, назва шрифту =MS Sane Serif, розмір = 14. для решти компонентів цю властивість змінювати не потрібно. Також для компонентів SpinEdit, Button, в властивості Hint коротко описати функціональне призначення даного елемента, виходячи з його назви


Таблиця 5. Властивості компонентів форми SerPok (початок)

Назва компонента Властивості Значення
Label1 Caption – відповідно до рис. 13
Transparent true
Label2 Caption – відповідно до рис. 13
Transparent true
GroupBox1 Caption заповнення
RadioButton1 Caption авто
RadioButton2 Caption ручне
GroupBox2 Caption цифри / текст
RadioButton3 Caption текст
RadioButton4 Caption цифри
SpinEdit Name KR
Button1 Caption Шукати
Width 121
Height 22
Button2 Caption Зберегти
Width 121
Height 21
Button3 Caption Загрузити
Width 121
Height 22
OpenDialog Властивостей змінювати не потрібно
SeveDialog Властивостей змінювати не потрібно
Edit1 Властивостей змінювати не потрібно
SpinEdit Name

8. Аналіз програми

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

Головної, Про програму та форму, що відображається при завантаженні.

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

На головній формі користувач може: обрати кількість рядків чи стовбців; створити масив може вручну – вводити елементи, а може автоматично згенерувати.

Користувач може вибрати на свій розсуд буквене або цифрове заповнення масиву елементами. У цифровому масиві цифри можуть бути як додатні та і від’ємні елементи.

Також користувач може зберегти результат пошуку елементів, і може завантажити уже збереженні дані про минулий пошук.

До недоліків можна віднести те, що більше трьох елементів для пошуку вводити неможна.

9. Тестування програми

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

Тестування програми виконувалось, як при покроковому режимі виконання програми, так і при компілюванні.


Рисунок 10 – Робота програми до початку пошуку у масиві

Рисунок 11 – Робота програми під час пошуку елемента у масиві.

10. Інструкція з експлуатації програми