Процедура SORT. Призначення - сортування записів вхідного файлу ZARPLATA.DAT. Процедура викликається з головного меню програми при виборі пункту "Сортування файлу" (функціональна клавіша F4). Сортування записів файлу здійснюється в пам'яті ПК методом прямого обміну. При запуску процедури записи вхідного файлу зчитуються в масив змінних, а по завершенні впорядкування переписуються у файл ZARPLATA.DAT. Після запису впорядкованого масиву на диск процедура передає керування головному блокові програми.
Процедура ZVEDENNYA. Призначення - вивід стрічки вихідного зведення на екран дисплею. Вхідна інформація для даної процедури знаходиться у файлі ZARPLATA.DAT. Виклик процедури здійснюється з головного меню програми при натисканні функціональної клавіші F7, тобто при виборі пункту "Вивід зведення на дисплей".
Дана процедура здійснює зчитування записів вхідного файлу та форматований вивід їх на друк з одночасним підрахунком підсумків по коду утримання та по коду с/г підприємства. При досягненні кінця файлу ZARPLATA.DAT процедура завершує свою роботу і передає керування в програму.
Блок-схема процедури представлена в додатку 3.
Програма складена і відладжена в середовищі Turbo Pascal 7.0. Опишемо призначення кожного оператора програми.
На початку програми згідно з вимогами технології програмування щодо документування програм розміщено вступний коментар до програми, а решта операторів програми мають таке призначення:
001
заголовок програми
002
підключення зовнішнього модуля управління дисплеєм (Crt)
003-008
опис структури запису вхідного файлу
009
опис типованої змінної для дискових файлів
010
опис дискового файлу zarplata
011-015
опис робочих змінних програми
016
заголовок процедури VVID
017-019
початок процедури, опис мітки та очистка екрану
020
відкриття дискового файлу ZARPLATA в режимі запису та дозапису
021-022
присвоєння змінним і та s початкових значень
023-029
вивід екранної форми для вводу даних з первинних документів та запрошення для продовження роботи або виходу з процедури вводу
030
заголовок оператора приєднання
031
присвоєння системній змінній CheckEof істинного значення (для організації виходу з процедури при натисканні комбінації клавіш Ctrl+Z
032
Заголовок циклу вводу
033-036
ввід значень змінних data (дата), sh_firma (код с/г підприємства), kod_utr (код утримань), suma (сума утримань)
037
запис уведених даних у дисковий файл ZARPLATA
038
збільшення номера стрічки (s) на одиницю
039-044
організація вводу по сторінках: при досягненні 23 стрічки здійснюється очистка екрану (вікна вводу)
045
кінець циклу вводу даних
046
кінець дії оператора приєднання
047
закриття оперативного файлу ZARPLATA (мітка zakr)
048
кінець тіла процедури вводу вхідних даних
049
заголовок процедури VYVID
051
початок процедури
052
відкриття дискового файлу ZARPLATA для читання записів
053-060
вивід екранної форми для відображення вхідних даних
061
присвоєння змінній s (номер стрічки екранної форми) початкового значення 7
063
початок циклу вводу записів файлу ZARPLATA (поки не eof)
064
зчитування запису файлу ZARPLATA у змінну w1
065-068
форматований вивід полів прочитаного запису на екран
069
збільшення змінної позиціонування курсору на одиницю
070
кінець циклу вводу
071
073
закриття дискового файлу
074
пауза в роботі процедури
075
кінець процедури VYVID
076
заголовок процедури SORT
077-080
опис локальних змінних процедури
081
082
відкриття файлу F1 для читання
083
присвоєння змінній n значення‚ рівного кількості записів у вхідному файлі F1
084
зчитування записів вхідного файлу в масив змінних а
085
закриття вхідного файлу F1
086-093
впорядкування елементів масиву а методом простого обміну
094
відкриття файлу F2 для запису
095
запис елементів масиву а в файл F2
096
закриття вхідного файлу F2
097
кінець процедури сортування
101
заголовок процедури zvedennya
103
104
відкриття дискового файлу zarplata для читання
105-112
вивід заголовку та шапки вихідного зведення
113
читання запису файлу ZARPLATA в змінну w1
114
115
заголовок циклу по кінцю файлу ZARPLATA (доки не eof)
116
запам'ятовування коду с/г підприємства поочного запису (sh_firma) в змінній c
117
присвоєння початкових значень змінній s1, яка призначена для підрахунку підсумків по коду с/г підприємства
118
заголовок циклу по коду с/г підприємства (до тих пір c = sh_firma)
119
присвоєння початкових значень змінній s2, яка призначена для підрахунку підсумків по коду утримання
120
запам'ятовування коду утримання поточного запису (kod_utr) в змінній kod
121
заголовок циклу по коду утримання (до тих пір поки kod = kod_utr
122
накописення підсумків по коду утримань
123
читання наступного запису дискового файлу ZARPLATA в змінну work
124
умовний оператор, котрий перевіряє, чи досягнуто кінець файлу ZARPLATA і в разі виконання цієї умови передає керування на мітку vtn (оператор 126)
125
кінець циклу по коду утримання
126
вивід підсумків по коду утримання
127
підрахунок підсумків по коду с/г підприємства
128
кінець циклу по підприємству (по кінцю файлу)
129-134
вивід підсумків по підприємству
133
закриття файлу ZARPLATA
134
організація паузи у виконанні програми
135
137
початок головного блоку програми
138
присвоєння дисковому файлу з логічним іменем ZARPLATA фізичного імені zarplata.dat
139
заголовок циклу виводу меню програми
140
початок циклу
141-144
Встановлення основного та фонового кольорів, опис вікна виводу головного меню програми
145-155
вивід головного меню програми
156
очікування натискання клавіші на клавіатурі та присвоєння коду натиснутої клавіші змінній choise
159
заголовок оператора вибору, котрий аналізує код натиснутої клавіші
160
виклик процедури VVID, якщо натиснуто клавішу F2 (код клавіші 6016)
161
виклик процедури VYVID, якщо натиснуто клавішу F3 (код клавіші 6116)
162
виклик процедури SORT, якщо натиснуто клавішу F4 (код клавіші 6216)
163
виклик процедури ZVEDENNYA, якщо натиснуто клавішу F7 (код клавіші 6516)
164
оператор виходу, завершення роботи програми при натисканні клавіші Esc (код 2716)
165
кінець оператора вибору
166
кінець циклу виводу меню
167
кінець програми
Блок-схема програми представлена в додатку 2, текст програми представлена в додатку 4.
Випробування будь-якої системи є найбільш відповідальним і пов'язаний з найбільшими труднощами і найбільшими втратами часу. Відпадка й тестування - найважливіші життєвого циклу програм. Не можна робити висновок про правильність програми лише на тій підставі, що програма повністю відкомпільована і при виконанні видає числові результати. Все, чого досягнуто в даному випадку - це отримання деякої вихідної інформації, необов'язково правильної. У програмі все ще можуть міститись логічні помилки. Тому необхідно здійснювати "ручну" перевірку машинних результатів.
Існує кілька способів перевірки правильності машинних результатів:
обчислення результатів вручну;
отримання результатів з довідкової літератури, документації або сукупності таблиць;
отримання результату з допомогою іншої програми.
Для перевірки правильності створеної програми розроблено тестові дані, представлені таблиці 3.
Таблиця 3. Тестові дані для перевірки правильності програми.
Дата
С/г підприємство
Вид утримань
Сума утримань
15.11
01
81
1520.00
478.00
82
1457.00
18.11
204.00
90
252.00
17.11
93
300.00
16.11
02
1864.00
234.00
83
450.00
19.11
89
258.00
1230.00
560.00
Дані, представлені в таблиці 3 співпадають з результатами роботи програми, представленими на екранній копіях (додаток 1), що свідчить про те, що процедури запису даних на диск та виводу даних на дисплей працюють вірно.
Контрольний приклад для вихідної відомості розроблено з допомогою табличного процесора Excel і представлено в таблиці 4.
Таблиця 4. Контрольний приклад для співставлення з даними машинного експерименту
1998.00
1661.00
Всього по підприємству
4211.00
2098.00
1488.00
4596.00
Порівняння результатів роботи програми (див. додаток 6) та даних таблиці 4 свідчить про їх повне співпадання. Таким чином, можна стверджувати, що програма дає правильні результати для розроблених тестових даних. Однак висновок про правильність програми можна зробити тільки після тривалої експлуатації.
Висновки
Розв'язування економічних задач з використанням персональних комп'ютерів в умовах ринкової економіки набуває великого практичного значення, оскільки дає можливість отримати оперативну та достовірну інформацію. Використання з цією метою готових пакетів прикладних програм має певні вади, найважливішими серед яких є висока вартість фірмових пакетів та складність їх прив'язки для розв'язку конкретних, особливо нескладних задач. Тому надзвичайно важливо вміти самостійно складати прості програми для розв'язування задач економічного характеру.
В даному курсовому проекті розроблено і описано програму для отримання відомості відвантаження готової продукції. Для розробки програми вибрано мову Паскаль (середовище Turbo Pascal 6.0). Програма розроблена із застосуванням методики процедурного програмування.
Програма відкомпільована з отриманням незалежного ехе-файла та відладжена з використанням набору тестових даних. Контрольний приклад для перевірки правильності роботи програми розроблено з допомогою табличного процесора Excel97. Результат машинного експерименту та контрольний приклад повністю співпали, тому можна зробити висновок про можливість використання розробленої програми на практиці. Дана програма може бути використана також при розробці пакету програм для автоматизованої системи обробки інформації по обліку праці і зарплати для конкретного замовника. Вибір алгоритмічної мови Паскаль для реалізації поставленої задачі повністю виправдав себе. В процесі відладки програми зроблено висновок про можливість її вдосконалення - реалізацію деяких підзадач можна було б оформити у вигляді незалежних програмних модулів, які б можна було надалі використати при розробці інших подібних задач економічного характеру.
В.М. Бондарев‚ В.И. Рублинецкий‚ Е.Г. Качко. Основы программирования. - Харків: Фоліо‚ 1997. - 364 с.
Е.А. Зуев. Язык программирования Turbo Pascal 6.0. Москва:Унитех‚
1992. - 298 с.
А.И.Марченко‚ Л.А.Марченко. Программирование в среде Borland Pascal 7.0. К: Юниор‚ 1998. - 478 с.
Ю.С.Бородич‚ А.Н.Вальвачев‚ А.И. Кузьмич. Паскаль для персональных компьютеров. Минск: Вышейшая школа‚ 1991. - 476 с.
Г.Е.Федорова‚ З.С.Чубасова‚ Б.Ф.Пономаренко. Проектирование и организация машинной обработки экономической информации. Москва: Финансы и статистика‚ 1986. - 399 с.
ДОДАТКИ
Страницы: 1, 2