Файл: Отчет 2012 курсовая.docx

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

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

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

Добавлен: 18.09.2024

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

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

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

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

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

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

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

Якщо ви натиснули 2-Виведення даних на екран, з’явиться таблиця з вже існуючою інформацією. Для повернення в меню натисніть будь-яку клавішу.

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

Для видалення запису натисніть 4-Видалення. Для видалення запису, вам лише необхідно ввести її номер. Для виходу в основне меню натисніть будь-яку клавішу.

Для пошуку натисніть 5-Пошук. На екрані з’явиться зручне меню, відповідно за пунктами та вашими побажаннями ви можете обрати пошук за критеріями. Для виходу в основне меню натисніть будь-яку клавішу.

Для виходу з програми натисніть 6.

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

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

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

Вивід інформації:

Редагування:

Видалення:

Пошук за спеціальністю, середньої заробітної плати:


Пошук, за спеціальністю, кількості робочих місць:

Пошук за середньою заробітною платою:

Висновки

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

Література

1. Йенсен К., Вирт Н. Руководство для пользователя и описание языка.

2. Глинський Я.М., Анохін В.Є., Ряжська В.А. Паскаль. Turbo Pascal і Delphi. Навч. посібн. 5-те доп. вид. – Львів: Деол, СПД Глинський, 2004. – 176 с.

3. Ковалюк Т.В. Основи програмування. – К.: Видавнича група BHV, 2005. – 384c.: іл.

4. А. И. Заковряшин - Алгоритмизация и программирование вычислительных задач

5. Коффман Эллиот Б. Turbo Pascal. Практикум 5-е издание.: пер. с англ. М.: Издательский дом "Вильямс", 2005. – 896 с.: ил.

6. Марченко А.И., Марченко Л.А. Програмирование в среде Turbo Pascal 7.0 / Марченко А.И., Марченко Л.А.: Под ред. Таресенко В.П. – 9-е изд. – К.:Век+, СПб.: КОРОНА-Век, 2007. – 464 с.: ил.

7. Семотюк В. Програмування в середовищі Турбо Паскаль. Львів: БаК, 2000. – 248 с.


Додаток А

(обов’язковий)

Лістинг основної програми

program kyr;

uses crt, kp_mod,kyrs;

label 0,1;

var p:integer;

begin

mygraphinit;

assign(f,'Robota.dat');

1:clrscr;

gotoxy(22,8); writeln('Zdelaite vubor');

gotoxy(20,9); writeln('1-vvod');

gotoxy(20,10); Writeln('2-vuvod');

gotoxy(20,11); writeln('3-redaktirovaie');

gotoxy(20,12); writeln('4-udalenie');

gotoxy(20,13); writeln('5-poisk');

gotoxy(20,14); writeln('6-vuxod');

readln(p);

case p of

1:begin vvod; goto 1 end;

2:begin vuvod; goto 1 end;

3:begin redaktirovanie; goto 1 end;

4:begin udalenie; goto 1 end;

5:begin poisk; goto 1 end;

6:goto 0

else goto 1;

end;

0:end.

Додаток Б

(обов’язковий)

Лістинг модуля kp_mod

unit kp_mod;

interface

uses crt;

type robota=record

rabdav:string[20];

spec:string[20];

kil:integer;

serpl:real;

end;

var r:robota;

f,f1:file of robota;

i,p,n,t,l,m,k:integer;

g,d:string;

j,sr,s:real;

procedure Vvod;

procedure Vuvod;

procedure redaktirovanie;

procedure udalenie;

procedure poisk;

implementation

procedure Vvod;

begin

clrscr;

rewrite(f);

for i:=1 to 10 do

begin

writeln('Vvedite rabotodavcia '); readln(r.rabdav);

writeln('Vvedite specialnost '); readln(r.spec);

writeln('Vvedite kilkist robochux misc '); readln(r.kil);

writeln('Vvedite seredniy zarobitny platy '); readln(r.serpl);

write(f,r);

i:=i+1;

end;

close (f);

end;

procedure vuvod;

begin

clrscr;

reset(f);

writeln(' Pracevlawtyvannia ');

if filesize(f)=0 then writeln('Net zapisei')

else

for i:=1 to filesize(f) do

begin

read(f,r);

write(r.rabdav);

gotoxy(15,wherey); write(r.spec);

gotoxy(27,wherey); write(r.kil);

gotoxy(44,wherey); write(r.serpl:5:2);

writeln;

end;

close(f);

readkey;

end;

procedure redaktirovanie;

begin

clrscr;

reset(f);

while not (eof(f)) do

begin

read(f,r);

write(r.rabdav);

gotoxy(15,wherey); write(r.spec);

gotoxy(27,wherey); write(r.kil);

gotoxy(44,wherey); write(r.serpl:5:2);

writeln;

end;

close(f);

writeln('1-Redaktirovat zapis');

writeln('2-Dobvit ewe');

readln(p);

reset(f);

case p of

1:begin

writeln('Vvedite nomer zapisi ');

readln(n);

if n>filesize(f) then write('Takoi zapisi net')

else

begin

seek(f,n-1);

write('vvedite rabotodavcia ');

readln(r.rabdav);

writeln('Vvedite specialnist ');

readln(r.spec);

write('Vvedite kilkist robochix misc ');

readln(r.kil);

write('Vvedite seredniy zarobitny platy ');


readln(r.serpl);

write(f,r);

write('Zapis izmenena');

end;

readkey;

close(f);

end;

2:begin

seek(f, filesize(f));

t:=filesize(f);

g:='d';

while g='d' do

begin

clrscr;

write('vvedite rabotodavcia ');

readln(r.rabdav);

writeln('Vvedite specialnist ');

readln(r.spec);

write('Vvedite kilkist robochix misc ');

readln(r.kil);

write('Vvedite seredniy zarobitny platy ');

readln(r.serpl);

write(f,r);

t:=t+1;

write('Hotite prodolgut(d/n)');

readln(g);

end;

close(f);

end;

end;

end;

procedure udalenie;

begin

clrscr;

reset(f);

while not(eof(f)) do

begin

read(f,r);

write(r.rabdav);

gotoxy(15,wherey); write(r.spec);

gotoxy(27,wherey); write(r.kil);

gotoxy(44,wherey); write(r.serpl:5:2);

writeln;

end;

close(f);

writeln;

reset(f);

writeln('Vvedite nomer ydalennoi zapisi '); readln(n);

if n>filesize(f) then write('Takoi zapisi net')

else

begin

assign(f1,'robota2.dat');

reset(f); rewrite(f1);

for i:=1 to filesize(f) do

begin

read(f,r);

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

end;

close(f1); close(f);

erase(f);

rename(f1,'robota.dat');

write('zapis udalena');

end;

readkey;

end;

procedure poisk;

begin;

clrscr;

assign(f,'robota.dat');

writeln('1-rabotodavci ta serednia zarobitna pla za specialnisty');

writeln('2-rabotodavci ta kilkist robochux misc za specialnisty');

writeln('3-propozucii za zarobitnoiy platoiy');

readln(m);

reset(f);

case m of

1: begin

clrscr;

writeln('Vvedite specialnist ');

readln(d);

s:=0;k:=0;

reset(f);

writeln;

while not (eof(f)) do

begin

read(f,r);

if d=r.spec then

begin k:=k+1;

s:=s+r.serpl;

sr:=s/k;writeln('rabotodavec: ', r.rabdav);

end;

end;

if k=0 then writeln('Takoi specialnosti net v spiske') else

writeln('serednia zarobitna plata: ', sr:5:2);

close(f);

readkey;

end;

2:begin

assign(f,'robota.dat');

reset(f);

writeln('vvedite specialnist ');

readln(d);

while not (eof(f)) do

begin

read(f,r);

s:=0;

if d=r.spec then begin s:=s+1;

writeln('rabotodavec: ', r.rabdav);

writeln('Kilkist robochux misc', r.kil);

end;

end;

if s=0 then

writeln('Takoi specialnosti net v spiske');

close(f);

readkey;

end;

3:begin

assign(f,'robota.dat');

reset(f);

writeln('Vvedite zarobitny platy ');

readln(j);

while not (eof(f)) do

begin

read(f,r);

l:=0;

if j=r.serpl then

begin

l:=l+1;

write(r.rabdav);

gotoxy(15,wherey); write(r.spec);

gotoxy(27,wherey); write(r.kil);

gotoxy(44,wherey); writeln(r.serpl:5:2); end;

end;

if l=0 then writeln('Takix predlogenii net');

writeln;

close(f);

readkey;

end;

end;

end;

end.

Додаток В

(Обов’язковий)

Лістинг модуля графіки

unit kyrs;

interface

uses graph;

var gd, gm:integer;

errorcode:integer;

procedure MyGraphinit;

implementation

procedure mygraphinit;

begin

gd:=detect;

initgraph(gd,gm,' ');

errorcode:=graphresult;

if errorcode<>grok then

begin

write('Pomulka inicialzacii grafiku:', grapherrormsg(errorcode));


writeln('Rabota zaverwena');

halt(1);

end;

begin

setbkcolor(10);

setcolor(13);

rectangle(130,75,500,420);

floodfill(145,280,13);

setcolor(0);

outtextxy(170,100,'Stvorennia i obrobka faila zapusiv');

outtextxy(170,120,'pidgotovula stydentka 210-ik grypu');

outtextxy(250,140,'Nesterova Irina');

outtextxy(240,160,'Pracevlawtyvannia');

readln;

closeGraph;

end;

end;

end.