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

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

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

Добавлен: 19.09.2024

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

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

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

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

procedure Vvod; – виконує зчитування даних з клавіатури та заносить їх у файл pac.dat.

procedure Vyvod; – виводить на екран дані, які записані у файлі pac.dat.

procedure Dobavit; – додає інформацію у файл pac.dat.

procedure Delete; – видаляє запис із заданим номером із файла pac.dat.

procedure Redakt; – виконує редагування запису із заданим номером в файлі pac.dat.

procedure Poisk. Poisk2; – виконує виведення на екран загальну кількість пацієнтів, прибувши з інших міст, список пацієнтів з діагнозом Х, кількість пацієнтів клініки з діагнозом Х, вік яких не перевищує Х.

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

pro.pas – файл з основною програмою

pro.exe – відкомпільований файл з програмою

dani.pas – файл з модулем, який організовує загальну роботу з файлом (створення, виведення, внесення змін)

dani.tpu – відкомпільований файл, що організовує загальну роботу з файлом

graf.pas – файл з модулем, що виводить графічну заставку

graf.tpu – відкомпільований файл з модулем, що виводить графічну заставку

init.pas – файл з модулем, що виконує ініціалізацію графічного режиму

init.tpu – відкомпільований файл з модулем, що виконує ініціалізацію графічного режиму

pac.dat – файл, що містить відомості про пацієнтів лікарні

pacientu2.dat – допоміжний файл, що містить відомості про про пацієнтів лікарні.

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

Для початку роботи запустіть файл PRO.EXE, після чого повинна з’явитися стартова заставка програми. При натисканні будь-якої клавіші ви зможете перейти до головного меню.

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

Якщо ви обрали пункт меню 1. Створення записів, будьте уважними, бо після натискання Enter існуючий файл стане порожнім і його потрібно буде заповнювати знову. При заповненні файлу, перед введенням даних кожного наступного студента у вас буде запитуватися про продовження дій. Якщо ви бажаєте продовжити, то маєте натиснути саме клавішу “d”, в кожному іншому випадку ви повернетеся в меню, а вже введені результати збережуться

При виборі 2. Перегляд списку, вам відкриється список пацієнтів лікарні, для повернення в меню натисніть будь-яку клавішу.


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

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

Пункт 5. Видалення запису, дозволяє видали дані про пацієнта. З виведеного списку вам необхідно обрати і ввести з клавіатури номер пацієнта, дані якого потрібно видалити та натиснути Enter , після чого запис буде знищено.

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

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

Пункт 7. Пошук2 дозволяє знайти пацієнтів за введеним діагнозом та віком.

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

Пункт 8. Натисніть, якщо хочете вийти з програми. Ви побачите прощальну заставку.


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

Титулка

Основна програма, вигляд меню:

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

Виведення даних на екран:

Додавання даних у файл:

Редагування запису:

Видалення запису:

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

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

Кінець

Висновки

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

Література

1.Паскальи Дельфи. Самоучитель, В. Попов, Серия "Самоучитель", СПб.: Издательство "Питер", 2003 г. - 544 с.

2. Долинский М.С. - Алгоритмизация и программирование на Turbo Pascal. От простых до олимпиадных задач. СПб.: Питер, 2000г -  235 с.

3. С.Н.Лукин - Turbo Pascal 7.0. Самоучитель, Диалог – МИФИ, 1999- 211 с.

4.Turbo Pascal 7.0.Начальный курс  Фаронов В.В. М.: Издательство «ОМД Групп», 2003 г. -616 с.


5. Потопахин В.В. - Turbo Pascal: решение сложных задач, БХВ-Петербург, 2006 -208с. , ил.

Додаток а (Обов’язковий) Лістинг основної програми

program pacientu;

uses crt,graph,dani,graf;

label beg,exit;

var menu:integer;

begin start;

beg:assign(f, 'pac.dat');

clrscr;

textcolor(15);

gotoXY(11,4); writeln('Zdelayte vybor');

textcolor(green);

gotoXY(10,6); writeln('1 - Vvedennya zapisiv');

textcolor(red);

gotoXY(40,8); writeln('2 - Vyvedennya zapisiv');

textcolor(green);

gotoXY(11,10); writeln('3 - Dobavit`');

textcolor(red);

gotoXY(41,12); writeln('4 - Redaktuvaty');

textcolor(green);

gotoXY(12,14); writeln('5 - Vydalyty');

textcolor(red);

gotoXY(42,16); writeln('6 - Poshuk');

textcolor(green);

gotoXY(13,18); writeln('7 - Poshuk 2');

textcolor(red);

gotoxy(43,20); writeln('8 - Vyhid z programy');

textcolor(15);

gotoXY(27,22); write('-->');

readln(menu);

case menu of

1:begin Vvod; goto beg end;

2:begin Vvyvod; goto beg end;

3:begin Dobavit; goto beg end;

4:begin Redakt; goto beg end;

5:begin Delete; goto beg end;

6:begin Poisk; goto beg end;

7:begin Poisk2; goto beg end;

8:goto exit

else

begin

textbackground(8);

clrscr;

textcolor(red);

gotoxy(38,12); write('Oshibka!');

readln; goto beg;

end; end;

exit: final;end.

Додаток б (Обов’язковий) Лістинг модуля Dani

Unit dani;

interface

uses crt;

type zap=record

vik: byte;

diagnoz :string;

stat :char;

gorod :string[20];

pri: string[20];

end;

var f,f1:file of zap;

i:integer;

n_diagn:string;

st:char;

z:zap;

v_vik: byte;

k:real;

z_nvik:zap;

n:longint;

procedure Vvod;

procedure Vvyvod;

procedure Dobavit;

procedure Delete;

procedure Redakt;

procedure Poisk;

procedure Poisk2;

implementation

procedure Vvod;

begin

clrscr;

rewrite(f);

i:=1; st:='d';

while st='d' do

begin

textcolor(white);

clrscr;

writeln('Vvedit`', i , 'pacienta');


write('Vvedit` familiy: '); readln(z.pri);

write('Vvedit` vik: '); readln(z.vik);

write('Vvedit` stat: '); readln(z.stat);

write('Vvedit` gorod: '); readln(z.gorod);

write('Vvedit` diagnoz: '); readln(z.diagnoz);

write(f,z);

i:=i+1;

writeln ('Hochetete prodovzhit` (d/n)'); readln(st);

end;

close(f);

end;

procedure Vvyvod;

begin

clrscr;

assign(f,'pac.dat');

reset(f);

if filesize(f)=0 then

begin

gotoxy(20,10);textcolor(4+16);

write('SpUsok pustyj! Zapovnit fail!');

end

else

begin

write('#');

gotoxy(3,1);

write ('Prizvyshe');

gotoxy (21,1);

write('Vik');

gotoxy(29,1);

write('Stat`');

gotoxy(42,1);

write ('Gorod');

gotoxy(51,1);

write('Diagnoz');

for i:=1 to filesize(f) do

begin

if (i)mod(2)=0 then textcolor(red) else textcolor(green);

read(f,z);

gotoxy(1,i+1);

write(i);

gotoxy(3,i+1); write(z.pri);

gotoxy(22,i+1); write(z.vik);

gotoxy(30,i+1); write(z.stat);

gotoxy(42,i+1); write(z.gorod);

gotoxy(52,i+1); write(z.diagnoz);

writeln;

end;

textcolor(white);

write('Dlya perehody v menu nazhmit` Enter');

end;

readln;

close(f);

readkey;

end;

procedure Dobavit;

begin

clrscr;

assign(f,'pac.dat');

reset(f);

seek(f,filesize(f));

i:=filesize(f);

st:='d';

textcolor(white);

while st='d' do

begin

clrscr;

writeln('Vvedit', i , 'pacienta');

write('Vvedit familiy: '); readln(z.pri);

write('Vvedit vik: '); readln(z.vik);

write('Vvedit stat: '); readln(z.stat);

write('Vvedit gorod: '); readln(z.gorod);

write('Vvedit diagnoz: '); readln(z.diagnoz);

write(f, z);

i:=i+1;

writeln ('Hochete prodovzhit` (d/n)'); readln(st);

end;

close(f);

end;

procedure Delete;

begin

assign(f,'pac.dat');

clrscr;

reset(f);

if filesize(f)=0 then

begin

gotoxy(20,10);textcolor(4+16);

write('SpUsok pustyj! Zapovnit fail!');

end else

begin