Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовая работа / Курсовая 2012!7.doc
Скачиваний:
2
Добавлен:
30.05.2020
Размер:
1.79 Mб
Скачать

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

Титулка

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

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

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

Группа 1938Додавання даних у файл:

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

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

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

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

Кінець

Висновки

Виконавши курсовий проект, я придбав навички роботи в середовищі програмування 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с. , ил.

Группа 4507

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

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

Группа 4707else

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;

Группа 3582procedure 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);

Группа 3602 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);

Группа 3622write('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;

Группа 3642readln;

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);

Группа 3662 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

write('#');

gotoxy(3,1);

write ('Prizvyshe');

gotoxy (21,1);

Группа 3682write('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);

close(f);

reset(f);

Группа 3702 writeln('Ukazhite nomer udalyaemoi zapisi: ');

readln(n);

if filesize(f)<n then

begin

gotoxy(20,10);

write('Oshibka!!');

end else

begin

assign(f1,'PACIENTU2.DAT');

reset(f);

rewrite(f1);

for i:=1 to filesize(f) do

begin

read(f, z);

if filepos(f)<>n then write (f1,z);

end;

close(f1);close(f);

erase(f); rename (f1,'pac.dat');

gotoxy(20,wherey);

write('Zapis udalena');

textcolor(white);

end;

end;

readln;

end;

procedure Redakt;

begin

clrscr;

textcolor(white);

assign(f,'pac.dat');

reset(f);

if filesize(f)=0 then

begin

gotoxy(20,10);

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

end

else

write('#');

gotoxy(3,1);

write ('Prizvyshe');gotoxy (21,1);

write('Vik');Группа 4727gotoxy(29,1);

write('Stat`');

Группа 3742gotoxy(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);

close(f);

reset(f);

write('Vvedit` nomer zapysu dlya zminy ');

readln(n);

if n>filesize(f) then

begin

textbackground(8);

clrscr;

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

end else

begin

if n=i then

read(f,z);

seek(f,n-1);

writeln('Vvedit` potribni danni');

gotoxy(20,wherey);

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

gotoxy(20,wherey);

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

gotoxy(20,wherey);

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

gotoxy(20,wherey);

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

gotoxy(20,wherey);

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

write(f, z);write('Zminy zberegeni!');

Группа 3782end;

readln;

close(f);

end;

procedure Poisk;

begin

clrscr;

assign(f,'pac.dat');

write('Vvedit` diagnoz: '); readln(n_diagn);

k:=0; reset(f);

writeln;

while not (eof(f)) do

begin

read(f, z);

if n_diagn=z.diagnoz then k:=k+1

end;

close(f); reset(f);

if k=0 then begin write('Takogo diagnozu nema'); readkey end

else

begin

Группа 4002 clrscr;

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');

writeln;

end ; begin

while not (eof(f)) do

begin

read(f, z);

if n_diagn=z.diagnoz

then begin

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

Группа 4042gotoxy(1,wherey);

write(i);

gotoxy(3,wherey); write(z.pri);

gotoxy(22,wherey); write(z.vik);

gotoxy(30,wherey); write(z.stat);

gotoxy(42,wherey); write(z.gorod);

gotoxy(52,wherey); write(z.diagnoz);

writeln;

end; end;

close(f);

end;

reset(f);

i:=0;

while not (eof(f)) do

begin

read(f,z);

if (z.gorod<>'Sumy') then i:=i+1;

end;

writeln('Kilkist` nemiscevyh hvoryh =',i);

readkey ;

textcolor(white);

end;

Группа 3842procedure Poisk2;

begin

clrscr;

assign(f,'pac.dat');

write('Vvedit` diagnoz: '); readln(n_diagn);

writeln('Vvedit` vik: '); readln(v_vik);

i:=1; k:=0;

reset(f);

writeln;

clrscr;while not (eof(f)) do

begin

read(f, z);

if n_diagn=z.diagnoz then

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');

writeln;

if (v_vik=z.vik) then

begin

gotoxy(1,wherey);

write(i);

gotoxy(3,wherey); write(z.pri);

gotoxy(22,wherey); write(z.vik);

gotoxy(30,wherey); write(z.stat);

gotoxy(42,wherey); write(z.gorod);

gotoxy(52,wherey); write(z.diagnoz);

writeln;

i:=i+1;

end; end else

k:=1;

end;

if (k=1) and (i=1) then begin clrscr; write('nety takogo!'); end;

Группа 3902 close(f);

readkey ;

textcolor(white);

end;

end.

Соседние файлы в папке Курсовая работа