ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 16.09.2024
Просмотров: 39
Скачиваний: 0
СОДЕРЖАНИЕ
3.1 Опис структури даних та вимоги до них
3.2 Опис стандартних процедур та функцій, що використовувалися у програмі
3.3 Опис процедури та функцій користувача
3.4 Опис файлів та їх призначення
4 Інструкція для роботи з програмою
5 Приклад тестування та результату роботи програми
3.3 Опис процедури та функцій користувача
Procedure Vvod; - виконує зчитування даних з клавіатури та заносить їх у файл vypusk.bat.
Procedure Vuvod; - виводить на екран дані які записані у файлі vypusk.dat
Procedure Dobavit; - додає інформацію у файл vypusk.dat
Procedure Redakt; - виконує редагування запису із заданим номером в файлі vypusk.dat
Procedure Delete; - видаляє запис із заданим номером із файла vypusk.dat
Procedure Poisk; - виконує виведення на екран випускників школи у яких середній бал вище заданого;
Procedure Poisk1; - виконує виведення на екран випускників школи, які навчаються в ВНЗ.
3.4 Опис файлів та їх призначення
vypusk2012.pas – файл з основною програмою.
vypusk2012.exe – відкомпільований файл з основною програмою.
vypuskniki.pas – файл модуля.
vypuskniki.tpu – відкомпільований файл модуля.
vypusk.dat – файл, що містить відомості про випускників школи.
4 Інструкція для роботи з програмою
Зазначити, які ресурси необхідні для роботи програми ,що необхідно зробити для запуску програми на виконання, дати чіткі вказівки, як необхідно відповісти на запити програми.
Для запуску програми необхідно запустити файл vypusk2012.exe. Після запуску файлу з’явиться заставка програми при натисненні будь-якої клавіші з’явиться меню. В меню вибираємо необхідний пункт за допомогою введення відповідного номера і натискаємо enter.
5 Приклад тестування та результату роботи програми
Основна програма, вигляд меню:
Створення файлу записів:
Виведення даних на екран:
Додавання даних у файл:
Редагування даних у файл:
Видалення запису:
Випускники шклоли, середній бал яких вище зазначеного:
Випускники школи які навчаються в ВНЗ:
Висновок
Виконавши курсовий проект, я придбав навички роботи в середовищі програмування Turbo Pascal, ознайомився з елементами мови типи даних і графіка у Паскалі, а також створив програму.
На базі цих навичок я створив программу,відповідно до свого варіанта яка містить відомості про випускників школи.
Программа має такі процедури користувача:
Vvod – виконує зчитування данних з клавіатури;
Vyvod – виводить данні на екран;
Dobavit – добавляє інформацію;
Delete – видаляє запис із заданим номером;
Redakt – виконує редагування запису із заданим номером;
Poisk – випускників, середній бал якіх більше 4;
Poisk1 – виводить список випускників, що вступили до вищих навчальних закладів.
Підвів підсумки, що Turbo Pascal є гнучкою та алгоритмічною мовою програмування, і добре підходить як для початківців так і для досвідченого програміста. Широкий набір підпрограм та модульність дозволяє швидко та якісно створити програмний продукт.
Література
1. Семотюк В. Програмування в середовищі Турбо Паскаль. Львів: БаК, 2000. – 248 с.
2. Ковалюк Т.В. Основи програмування. – К.: Видавнича группа BHV, 2005. – 384с.: іл.
3. Коффман Эллиот Б. Turbo Pascal. Практикум 5-е издание.: пер. с англ. М.: Издателский дом “Вильямс”, 2005. – 896 c.: ил.
4.
5. Епанешников А.М. Епанешников В.А. - Программирование в среде Turbo Pascal 7.0. Москва:Диалог-МИФ, 2000.- 368 с.
6. Марченко А.И. Марченко Л.А. – Программирование в среде Turbo Pascal 7.0. Киев:Век+,1999. – 460 с.
Додаток а (Обовязковий) Лістинг основної програми
uses crt,graph,vypuskniki;
label 0,1;
var n,drive,mode:integer;
begin
Drive:=Detect;
InitGraph(Drive,Mode,'');
if GraphResult<>grok then Halt(1);
SetBkColor(4);
SetTextStyle(1,0,4);
OutTextXY(190,180,'Курсова робота');
SetTextStyle(1,0,3);
OutTextXY(255,220,'Вариант-10');
SetTextStyle(1,0,2);
OutTextXY(480,280,'Макаренко О.В.');
readln;
Closegraph;
assign(f,'vypusk.dat');
1:clrscr;
gotoXY(32,8); writeln('Сделайте выбор');
gotoXY(30,9); writeln('1 – Ввод записи');
gotoXY(30,10); writeln('2 – Вывод записи');
gotoXY(30,11); writeln('3 – Добавить запись');
gotoXY(30,12); writeln('4 – Редактировать запись');
gotoXY(30,13); writeln('5 – Удалить запись');
gotoXY(30,14); writeln('6 – Поиск по среднему балу');
gotoXY(30,15); writeln('7 – Поиск выпускников учащихся в ВУЗе');
gotoXY(30,16); writeln('8 - Выход');
gotoXY(27,17); writeln('-->');
read(n);
case n of
1:begin Vvod; goto 1 end;
2:begin Vuvod; goto 1 end;
3:begin Dobavit; goto 1 end;
4:begin Redakt; goto 1 end;
5:begin Delete; goto 1 end;
6:begin Poisk; goto 1 end;
7:begin Poisk1; goto 1 end;
8:goto 0;
else goto 1 end;
0:end.
Додакот б Лістинг модуля Vypuskniki
Unit vypuskniki;
interface
uses Crt;
type school = record
fam,im,otch:string;
klass:string;
nom_atest:string;
sr_bal:real;
u4_zaved:string;
end;
var f: file of school;
i,v:integer;
z:school;
st:string;
n:byte;
n_z:byte;
s:real;
k:byte;
procedure Vvod;
procedure Vyvod;
procedure Dobavit;
procedure Redakt;
procedure Delete;
procedure Poisk;
procedure Poisk1;
implementation
procedure vvod;
begin
clrscr;
rewrite(f);
readln;
i:=1; st:='d';
while st='d' do
begin
clrscr;
writeln('Vvedite dannye ',i, ' vypusknika');
write('Vvedite familiju:'); readln(z.fam);
write('Vvedite imja : '); readln(z.im);
write('Vvedite otchestvo : '); readln(z.otch);
write('Vvedite klass:'); readln(z.klass);
write('Vvedite № atestata:'); readln(z.nom_atest); write('Vvedite sredniy bal:'); readln(z.sr_bal);
write('Vvedite vid uchebnogo zavedeniya (1-VNZ; 2-Kolleg; 3-Uchilishw; 4-ne u4itsya)');
readln(n);
case n of
1:z.u4_zaved:='VNZ';
2:z.u4_zaved:='Kolleg';
3:z.u4_zaved:='Uchilishe';
4:z.u4_zaved:='Ne u4itsya';
end;
write(f,z);
i:=i+1;
writeln ('Hotite prodolzhit (d/n)');readln(st);
end;
close(f);
readkey;
end;
Procedure Vyvod;
begin
clrscr;
reset(f);
if filesize(f)=0 then begin
textcolor(4);
writeln('‚ Ў §Ґ Ґв § ЇЁбҐ©');
textcolor(15); end else
begin
gotoXY(34,1); Write('Spisok vypusknikov');
gotoXY(1,2); write('Familiya');
gotoXY(12,2); write('Im9');
gotoXY(22,2); write('Ot4estvo');
gotoXY(36,2); write('Klass');
gotoXY(42,2); write('ь atest');
gotoXY(52,2); write('Sr bal');
gotoXY(59,2); write('Vid u/z');
writeln; i:=1;
while not (eof(f)) do
begin
read(f,z);
gotoXY(1,wherey); write(z.fam);
gotoXY(12,wherey); write(z.im);
gotoXY(22,wherey); write(z.otch);
gotoXY(36,wherey); write(z.klass);
gotoXY(42,wherey); write(z.nom_atest);
gotoXY(52,wherey); write(z.sr_bal:4:2);
gotoXY(59,wherey); write(z.u4_zaved);
i:=i+1;
writeln;
end;
end;
close(f);
readkey;
end;
Procedure Dobavit;
Begin
clrscr;
reset(f);
seek(f,filesize(f));
readln;
st:='d';
while st='d' do
begin
clrscr;
writeln('Vvedite dannye ',i, ' vypusknika');
write('Vvedite familiju:'); readln(z.fam);
write('Vvedite imja : '); readln(z.im);
write('Vvedite otchestvo : '); readln(z.otch);
write('Vvedite klass:'); readln(z.klass);
write('Vvedite ь atestata:'); readln(z.nom_atest);
write('Vvedite sredniy bal:'); readln(z.sr_bal);
write('Vvedite vid uchebnogo zavedeniya(1-VNZ; 2-Kolleg; 3-Uchilishw; 4-ne u4itsya :');
readln(n);
case n of
1:z.u4_zaved:='VNZ';
2:z.u4_zaved:='Kolleg';
3:z.u4_zaved:='Uchilishe';
4:z.u4_zaved:='Ne u4itsya';
end;
write(f,z);
writeln('Hotite prodolzhit (d/n)'); readln(st);
end;
close(f);
readkey;
end;
Procedure Redakt;
begin
clrscr;
reset(f);
if filesize(f)=0 then begin
textcolor(4);
writeln('V BD netu danoi zapisi');
textcolor(15); end else
begin
gotoXY(34,1); Write('Spisok vypusknikov');
gotoXY(1,2); write('Familiya');
gotoXY(12,2); write('Im9');
gotoXY(22,2); write('Ot4estvo');
gotoXY(34,2); write('Klass');
gotoXY(40,2); write('ь atest');
gotoXY(50,2); write('Sr bal');
gotoXY(57,2); write('Vid u/z');
writeln; i:=1;
while not (eof(f)) do
begin
read(f,z);
gotoXY(1,wherey); write(z.fam);
gotoXY(12,wherey); write(z.im);
gotoXY(22,wherey); write(z.otch);
gotoXY(34,wherey); write(z.klass);
gotoXY(40,wherey); write(z.nom_atest);
gotoXY(50,wherey); write(z.sr_bal:4:2);
gotoXY(57,wherey); write(z.u4_zaved);
i:=i+1;
writeln;
end;
end;
close(f);
reset(f);
writeln;
write('Nomer zapisi:'); read(n_z);
if n_z>filesize(f) then write('Danaya zapis otsutstvuet') else
begin
readln;
seek(f,n-1);
write('Vvedite familiju:'); readln(z.fam);
write('Vvedite imja : '); readln(z.im);
write('Vvedite otchestvo : '); readln(z.otch);
write('Vvedite klass:'); readln(z.klass);
write('Vvedite ь atestata:'); readln(z.nom_atest);
write('Vvedite sredniy bal:'); readln(z.sr_bal);
write('Vvedite vid uchebnogo zavedeniya (1-VNZ; 2-Kolleg; 3-Uchilishw; 4-ne u4itsya)');
readln(n);
case n of
1:z.u4_zaved:='VNZ';
2:z.u4_zaved:='Kolleg';
3:z.u4_zaved:='Uchilishe';
4:z.u4_zaved:='Ne u4itsya';
end;
write(f,z);
end;
close(f);
readkey;
end;
procedure delete;
begin
clrscr;
reset(f);
if filesize(f)=0 then begin
textcolor(4);
writeln('V BD netu danoi zapisi');
textcolor(15); end else
begin
gotoXY(34,1); Write('Spisok vypusknikov');
gotoXY(1,2); write('Familiya');
gotoXY(12,2); write('Im9');
gotoXY(22,2); write('Ot4estvo');
gotoXY(34,2); write('Klass');
gotoXY(40,2); write('ь atest');
gotoXY(50,2); write('Sr bal');
gotoXY(57,2); write('Vid u/z');
writeln; i:=1;
while not (eof(f)) do
begin
read(f,z);
gotoXY(1,wherey); write(z.fam);
gotoXY(12,wherey); write(z.im);
gotoXY(22,wherey); write(z.otch);
gotoXY(34,wherey); write(z.klass);
gotoXY(40,wherey); write(z.nom_atest);
gotoXY(50,wherey); write(z.sr_bal:4:2);
gotoXY(57,wherey); write(z.u4_zaved);
writeln;
i:=i+1;
end;
end;
close(f);
reset(f);
writeln;
write('Nomer zapisi:'); read(n_z);
if n_z>filesize(f) then write('Danaya zapis otsutstvuet') else
begin
seek(f,filesize(f)-1);
read(f,z);
seek(f,n_z-1);
write(f,z);
seek(f,filesize(f)-1);
truncate(f);
writeln('Zapis udalena');
end;
readkey;
end;
Procedure Poisk;
begin
clrscr;
reset(f);
write('Vvedite srednii bal:'); readln(s);
writeln; v:=0;
writeln('Spisok vypusknikov so srednim balom vyshe:',s:4:2);
for i:=1 to filesize(f) do
begin
read(f,z);
if s<=z.sr_bal then
begin
gotoXY(1,wherey); write(z.fam);
gotoXY(12,wherey); write(z.im);
gotoXY(22,wherey); write(z.otch);
gotoXY(34,wherey); write(z.klass);
gotoXY(40,wherey); write(z.nom_atest);
gotoXY(50,wherey); write(z.sr_bal:4:2);
gotoXY(57,wherey); write(z.u4_zaved);
writeln;
end else v:=v+1;
end;
if v=i then writeln('Takogo sr_bala ne mozjet byt');
readkey;
close(f);
end;
Procedure Poisk1;