ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 19.09.2024

Просмотров: 20

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Зміст

1 Постановка задачі..................................................................................................................3

2 Алгоритм розробки програми..............................................................................................4

3 Практична реалізація............................................................................................................7

3.1 Опис структури даних та вимоги до них...........................................................7

3.2 Опис файлів та їх призначення...........................................................................8

3.3 Опис процедур та функцій користувача..........................................................10

3.4 Опис процедур та функцій, що використовувалися у програмі....................10

4 Інструкція для роботи з програмою..................................................................................11

5 Приклад тестування та результату роботи програми......................................................14

Висновки...............................................................................................................................................16

Література.............................................................................................................................................17

Додаток А. Лістинг основної програми.............................................................................................18

Додаток Б. Лістинг модуля Dani.........................................................................................................20

Додаток В. Лістинг модуля Graf.........................................................................................................36

1 Постановка задачі Практичне завдання

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

Написати програму, що видає наступну інформацію:

- загальну кількість пацієнтів, прибувши з інших міст;

- список пацієнтів з діагнозом Х;

- кількість пацієнтів клініки з діагнозом Х, вік яких не перевищує Х.

Вимоги до програми

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

Основні пункти меню програми:

- створення файла записів;

- додавання інформації у файл;

- внесення змін у запис за запитом;

- видалення запису;

- виведення вмісту файла даних у вигляді таблиці.

Обробка файла (створення, додавання, видалення, редагування і т.д.) повинна здійснюватися за допомогою процедур та функцій.

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


Всі процедури та функції повинні бути розміщенні у відповідних модулях.

Фай повинен містити не менше 10 записів.

2 Алгоритм розробки програми

1. Створити два файли: основний файл з програмою та файл модуля.

2. В основному файлі зв’язати файлову змінну з файлом даних та створити меню відповідно до заданих пунктів.

3. В файлі модуля створити тип даних, який описує структуру запису та описати необхідні змінні (f – файлова змінна, z – змінна типу запису і т.д.)

4. В файлі модуля створити процедури та функції, які реалізують задані пункти меню.

4.1. Створити процедуру створення файла записів та занесення в нього даних:

- створити та відкрити файл для запису за допомогою процедури rewrite (f, ‘PAC.dat’);

- ввести потрібні данні з клавіатури та записати їх у файл за допомогою процедури read (f, z);

- закрити файл процедурою close (f).

4.2. Створити процедуру виведення даних на екран:

- відкрити файл для читання – reset (f);

- зчитати дані з файлу – read (f, z);

- вивести дані на екран;

- закрити файл.

4.3. Створити процедуру додавання інформації у файл:

- відкрити файл для читання та запису – reset (f);

- встановити вказівник файла за останнім його компонентом процедурою seek (f,filesize(f));

- записати додаткові дані аналогічно процедурі введення даних;

- закрити файл.

4.4. Створити процедуру редагування запису:

- відкрити файл, що потрібно відредагувати;

- ввести номер запису для редагування;

- зчитати дані з файлу та порівняти його номер із введеним;

- встановити вказівник файла на заданий елемент seek (f,n-1);

- відредагувати поля запису та записати їх у файл;

- закрити файл.

4.5. Створити процедуру видалення запису:

- описати допоміжний файл та зв’язати його з фізичним файлом на диску;

- відкрити основний файл для читання та допоміжний фай для запису;

- ввести номер запису, який необхідно видалити;

- зчитати дані з файлу та порівняти його номер із введеним, якщо не співпадає то перезаписати дані у допоміжний файл;


- закрити обидва файли;

- видалити основний фізичний файл процедурою – erase (f);

- перейменувати допоміжний файл у файл з основною назвою.

4.6. Створити процедуру визначення загальної кількості пацієнтів, прибувших з інших міст; - список пацієнтів з діагнозом Х;.

- описати допоміжний файл та зв’язати його з фізичним файлом на диску;

- зчитати шуканий діагноз

- відкрити файл для читання.

- зчитати дані з файлу – read (f, z);

- якщо шуканий діагноз збігся с наявним збільшити покажчик на 1.

- закрити файл - close (f).

- відкрити файл для читання.

- зчитати дані з файлу – read (f, z);

- вивести дані про пацієнта с шуканим діагнозом на екран.

- закрити файл - close (f).

- відкрити файл для читання.

- зчитати дані з файлу – read (f, z);

- якщо місто пацієнта - не Суми то збільшити покажчик на 1.

вивести кількість не міських патентів на екран.

- закрити файл - close (f).

4.7.Створити процедуру визначення кількості пацієнтів клініки з діагнозом Х, вік яких не перевищує Х.

- Відкрити файл для читання.

- Ввести номер групи, якість знань якої необхідно визначити.

- Обрати предмет.

- Вирахувати відсоток якості знань студентів даної групи за формулою ((Кількість студентів з оцінкою 4 або 5)/(загальна кількість

студентів))*100%, та вивести результат.

- Закрити файл

5. В файлі модуля GRAF реалізувати процедури виведення графічної заставки.

5.1. Організувати вивід на екран вступної заставки.

  • Ініціалізувати графічний режим.

Продемонструвати заставку.

  • Повернутися в текстовий режим.

5.2. Вивід на екран завершальної заставки.

  • Ініціалізувати графічний режим.

  • Продемонструвати заставку-вихід.

  • Закрити графічний режим

6. Відкомпілювати створений модуль та виконати програму з використання створеного модуля.


3 Практична реалізація

3.1 Опис структури даних та вимоги до них

type zap=record – тип запису, що містить відомості пацієнтів лікарні.

pri: string[20]; – прізвище.

gorod :string[20];– місто

stat :char; – стать.

vik: byte; – вік.

diagnoz :string; – діагноз.

f,f1:file of zap; файлові змінні, які зв’язані з файлами, що містять відомості про пацієнтів лікарні.

i:integer; – лічильник.

n:integer; – номер шуканого запису.

n_diagn:string;– введений діагноз.

v_vik: byte; - шуканий вік.

z:zap;– змінна, що використовується для зчитування з файлу записів запису, що містить відомості про пацієнтів лікарні.

st:char; – змінна, значення якої використовується для перевірки умови продовження введення даних. Якщо st=‘d’, то продовжується введення даних.

k:real; – кількість пацієнтів клініки з діагнозом Х, вік яких не перевищує Х.

z_nvik:zap; – запис з інформацією про введений вік пацієнта.

3.2 Опис процедур та функцій, що використовувалися у програмі

Процедури для роботи з виведенням тексту:

Clrscr; - процедура очищення екрану.

GotoXY(<координата по Х>;<координата по Y>); - процедура переміщення курсору на вказану позицію.

Write(Т); – процедура виведення тексту на екран, де Т може бути рядком або змінною.

Read(змінна); - процедура зчитування введених даних.

Writeln(T); - процедура виведення тексту з перенесенням вказівника на наступний рядок.

Readln(змінна); - зчитування даних з перенесенням вказівника на наступний рядок.

Textcolor(color); - процедура встановлення кольору тексту.

Textbackground(color); - процедура встановлення кольору фону за текстом.

Прцедури та функції для роботи з файлами:

Assign (файлова змінна, рядок)- процедура, що встановлює зв’язок між файловою змінною та фізичним файлом.

Reset (файлова змінна)- процедура відкриття існуючого файлу.

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

Write (файлова змінна, список змінних)- процедура виконання запису даних в файл.

Read (файлова змінна, список змінних)- процедура, що виконує зчитування даних з файлу.


Close (файлова змінна)- процедура закриття файлу.

Rename (файлова змінна, рядок)- процедура перейменування файлу.

Erase (файлова змінна)- процедура видалення файлу.

Seek (файлова змінна, номер позиції)- процедура зміни позиції вказівника у файлі.

Eof (файлова змінна)- функція повертає значення true, якщо досягнуто кінець файлу; у протилежному випадку вихідне значення дорівнює false.

FileSize (файлова змінна)- функція повертає поточний розмір типізованого файлу.

Процедури та функції для роботи з графічним режимом:

InitGraph (Driver; Mode; path); - процедура ініціалізації графічного режиму.

Setbkcolor(color); - процедура встановлення кольору фону.

Setcolor(color); - процедура встановлення кольору малювання.

Settextstyle(накреслення,положення,розмір); - процедура встановлення налаштувань для тексту в графічному режимі.

Outtextxy(X,Y,text); - процедура виведення тексту, починаючи зі вказаних координат.

Line(X1,Y1,X2,Y2); - процедура малювання лінії.

CloseGraph; - процедура закриття графічного режиму.