Аналіз успішності групи

Розробка програми мовою Turbo Pascal для автоматизації процесу перевірки оцінок та аналізу успішності групи, для збереження і перегляду всієї інформації стосовно навчання. Формальна постановка задачі, створення алгоритму та вихідного коду програми.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык украинский
Дата добавления 13.10.2010
Размер файла 36,0 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Міністерство внутрішніх справ України

Харківський національний університет внутрішніх справ

Навчально-науковий інститут менеджменту, соціальних та інформаційних технологій

Кафедра інформаційних систем і технологій в діяльності ОВС

Курсова робота

з дисципліни "Основи програмування та алгоритмічні мови"

на тему: "Аналіз успішності групи"

Харків

Зміст

  • Вступ
  • 1. Основна частина
    • 1.1 Неформальна постановка задачі
    • 1.2 Формальна постановка задачі
    • 1.3 Структура зберігаючих даних
  • 2. Алгоритми
    • 2.1 Алгоритм основної програми
  • 3. Вихідний код програми
  • Висновок
  • Список використаної літератури

Вступ

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

Я вибрав мову програмування Turbo Pascal, з метою закріплення своїх навиків з програмування.

1. Основна частина

1.1 Неформальна постановка задачі

Розробити програму "аналіз успішності групи" для збереження та перегляду всієї інформації що стосується навчання.

ь Введення і збереження інформації стосовно оцінок групи:

o Фамілія курсанта

o Оцінка по математики

o Оцінка по хімії

o Оцінка по фізиці

o Оцінка по історії

ь Можливість редагування даної бази

ь Організація пошуку за критеріями

ь Аналіз успішності курсанта

ь Можливість перегляду всіх існуючих документів

ь Можливість видалення всієї бази.

ь Зручний інтерфейс для користувача

ь Швидкість та простота роботи в даній програмі

1.2 Формальна постановка задачі

Вихідні дані:

Позначимо через множину В = {B1, B2, … , Bi} всіх курсантів, тоді Bi={Z1, Z2, … , Zj}, де Zj - оцінка з певного предмету.

Таким чином отримуемо матрицю всіх відомостей R=||Rij||

Результат:

Множина Tij, яка формуються з вхідних даних а саме множини Bij

Математична модель:

1.3 Структура зберігаючих даних

G - структура для введення даних

· Im - поле для введення фамілії курсанта

· m - Поле для введення оцінки по матиматиці

· xi - Поле для введення оцінки по хімії

· fi - Поле для введення оцінки по фізики

· is - Поле для введення оцінки по історії

pamka - малює рамочку в певних координатах

vo - процедура для введення відомостей

por - процедура яка виконує аналіз та виводить його на екран

ud - процедура яка видаляє базу

zapask - процедура яка відповідає за створення головного меню

2. Алгоритми

2.1 Алгоритм основної програми

3. Вихідний код програми

uses crt,dos;

type g=record {an u gr}

im:string[25];

m,xi,fi,is:integer;

end;

var a:char;

b,i,p:byte;

s1,s2,s3,s4:string;

gr:g; f:file of g;

{-------------------}

procedure pamka (x1,y1,x2,y2:integer);

var i,c:integer;

begin

textcolor(7);

gotoxy(x1,y1);

write(#201);

for i:=1 to x2-x1-1 do

begin

gotoxy(x1+i,y1);

write(#205);

end;

gotoxy(x2,y1);

write(#187);

for i:=1 to y2-y1-1 do

begin

gotoxy(x2,y1+i);

write(#186);

end;

gotoxy(x2,y2);

write(#188);

for i:=1 to x2-x1-1 do

begin

gotoxy(x2-i,y2);

write(#205);

end;

gotoxy(x1,y2);

write(#200);

for i:=1 to y2-y1-1 do

begin

gotoxy(x1,y1+i);

write(#186);

end;

end;

procedure vo;

var i,n:integer;

begin

window(1,1,40,25);

textbackground(2);

clrscr;

pamka(1,1,39,3);

gotoxy(6,2);

textcolor(3);

write('Zapolnenie ranga uspevaemosti');

pamka(1,3,39,25);

window(2,4,38,24);

write('vvedi kolichestvo kyrs. v grupe-');readln(n);

assign(f,'qw.qw');

rewrite(f);

for i:=1 to n do

begin

seek(f,filesize(f));

clrscr;

writeln('Krsant#',i);

write('vvedi familiu kursanta- ');readln(gr.im);

write('vvedi otcenku po matem-');readln(gr.m);

write('vvedi otcenku po ximii-');readln(gr.xi);

write('vvedi otcenku po fizike-');readln(gr.fi);

write('vvedi otcenku po istorii-');readln(gr.is);

write(f,gr);

end;

close(f);

end;

{............................}

procedure por;

var i,s,k,k1,s1,s2,s3,s4,min,max,j,l,s5:integer;z:real;

begin

if fsearch('qw.qw','qw.qw')='' then

begin

window(1,1,40,25);

textbackground(2);

clrscr;

pamka(1,1,39,3);

gotoxy(6,2);

textcolor(3);

write('Analis ranga uspevaemosti');

pamka(1,3,39,25);

window(2,4,38,24);

textcolor(132);

writeln('FAIL NE NAIDEN');

end

else

begin

window(1,1,40,25);

textbackground(2);

clrscr;

pamka(1,1,39,3);

gotoxy(6,2);

textcolor(3);

write('Analis ranga uspevaemosti');

pamka(1,3,39,25);

textcolor(0);

window(2,4,38,24);

assign(f,'qw.qw');

reset(f);

s:=0;k:=0;k1:=0; s1:=0;s2:=0;s3:=0;s4:=0; min:=9999;max:=-9999;j:=0;l:=0;

for i:=0 to filesize(f)-1 do

begin

s5:=0;

seek(f,i);

read(f,gr);

s5:=gr.m+gr.is+gr.xi+gr.fi;

if 5<min then

begin

min:=s5;j:=i;

end;

if s5>max then

begin

max:=s5;l:=i;

end;

s:=s+gr.m+gr.is+gr.xi+gr.fi;

s1:=s1+gr.m;

s2:=s2+gr.is;

s3:=s3+gr.xi;

s4:=s4+gr.fi;

k:=k+4;

k1:=k1+1;

end;

seek(f,j);

read(f,gr);

writeln('kursant-',gr.im,' imeet samiy nizkiy bal');

seek(f,l);

read(f,gr);

writeln('kursant-',gr.im,' imeet samiy visokiy bal');

writeln('obsh. sr.bal v grupe- ',s/k:1:1);

writeln('sr.bal po matem.- ',s1/k1:1:1);

writeln('sr.bal po istorii- ',s2/k1:1:1);

writeln('sr.bal po ximii- ',s3/k1:1:1);

writeln('sr.bal po fizike- ',s4/k1:1:1);

close(f);

end;

readln;

end;

{................................}

procedure ud;

begin

if fsearch('qw.qw','qw.qw')='' then

begin

window(1,1,40,25);

textbackground(2);

clrscr;

pamka(1,1,39,3);

gotoxy(6,2);

textcolor(3);

write('Udalenie ranga uspevaemosti');

pamka(1,3,39,25);

window(2,4,38,24);

textcolor(132);

writeln('FAIL NE NAIDEN');

readln;

end

else

begin

assign(f,'qw.qw');

erase(f);

writeln('FAIL UDALEN');

readln;

end;

end;

{-------------------}

procedure Rama (x1,y1,x2,y2,a,b:byte);

var i:integer;

begin

textbackground(a);

textcolor(b);

window (x1,y1,x2,y2);

write('Ъ');

for i:=1 to (x2-x1)-1 do

begin

write('Д');

end;

write('ї');

for i:=2 to (y2-y1)-1 do

begin

gotoxy(1,i);

write('і');

gotoxy(x2-x1+1,i);

write('і');

end;

write('А');

for i:=1 to (x2-x1)-1 do

begin

write('Д');

end;

write('Щ');

end;

{------------------------}

procedure newreadkey (var a:char;var b:byte);

begin

b:=0;

a:=readkey;

if a=#0 then

b:=ord(readkey);

end;

{------------------}

procedure zapaska(i:byte;s1,s2,s3,s4:string);

begin

window(1,1,40,7);

textbackground(1);

clrscr;

window(1,18,40,25);

textbackground(1);

clrscr;

window(1,7,40,18);

textbackground(0);

clrscr;

case i of

1: begin

window(1,7,10,10);

textbackground(1);

clrscr;

window(1,15,10,18);

textbackground(1);

clrscr;

end;

2: begin

window(10,7,20,10);

textbackground(1);

clrscr;

window(10,15,20,18);

textbackground(1);

clrscr;

end;

3: begin

window(20,7,30,10);

textbackground(1);

clrscr;

window(20,15,30,18);

textbackground(1);

clrscr;

end;

4: begin

window(30,7,40,10);

textbackground(1);

clrscr;

window(30,15,40,18);

textbackground(1);

clrscr;

end;

end;

window(1,12,40,14);

gotoxy(1,13);

write(s1);

write(s2);

write(s3);

write(s4);

end;

{==================}

begin

window(1,1,40,25);

textbackground(0);

clrscr;

p:=1;

s1:=' Vvod ';

s2:=' Analiz ';

s3:=' Udal ';

s4:=' Vihid ';

zapaska(1,s1,s2,s3,s4);

repeat

newreadkey(a,b);

case b of

77:p:=p+1;

75:p:=p-1;

end;

case p of

5: p:=4;

0: p:=1;

end;

case p of

1: begin

if a=#13 then

vo;

zapaska(p,s1,s2,s3,s4);

end;

2: begin

if a=#13 then

por;

zapaska(p,s1,s2,s3,s4);

end;

3: begin

if a=#13 then

ud;

zapaska(p,s1,s2,s3,s4);

end;

4: begin

if a=#13 then

halt;

zapaska(p,s1,s2,s3,s4);

end;

end;

until a=#27;

end.

Висновок

В данній курсовій роботі було створено програму для автоматизації та обробки певної інформації. Програма називається "Аналіз успішності групи". В даній програмі був створений максимально простий інтерфейс, максимально спростована робота користувачем. Таким чином програма легка в використанні, в той же час вона набагато спростовує обробку певної необхідної інформації. Було створене головне поле, де графічно створені пункти вибору певного дійства яке вибрав користувач. Під слофом графіка тут розуміється псевдографіка яка доступна завдяки модулю CRT. Також в "Аналізі успішності групи" використовуються процедури з модулю DOS. Була використані приємна кольорова гама, яка надає розслабленості користувачу, а також концентрує увагу на певних важливих елементах програми.

Список використаної літератури

1. Струков В.М. Основи алгоритмизации и програмирования. Часть 2. Учебное пособие. - Харьков: Изд. Нац. ун-та внутр.дел,2003. - 188 с.

2. Сердюченко В.Я. Розробка алгоритмів та програмування на мові Turbo Pascal. - X.,1995.

3. Немнюгин С.А. Turbo Pascal. - СПб.: Питер, 2002. - 496 с.: ил.


Подобные документы

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

    курсовая работа [20,9 K], добавлен 07.10.2010

  • Розробка програми "Злочин", що призначена для збереження та перегляду, а також автоматичного аналізу всієї інформації про злочинність. Порядок і основні принципи формування структури даних, постановка задачі. Написання та лістинг розробленої програми.

    контрольная работа [12,3 K], добавлен 07.10.2010

  • Розробка програми реєстрації автомобілів для збереження та перегляду інформації про модель машини, рік її випуску, об'єм двигуна і витрати палива. Складання алгоритмів розв'язання поставленої задачі та написання тексту програми в середовищі Turbo Pascal.

    курсовая работа [29,7 K], добавлен 13.10.2010

  • Розробка програми для вирішення графічної задачі. При вирішенні задачі необхідно cтворювати програму у середовищі програмування Turbo Pascal. Розробка алгоритму функціонування програми і надання блок-схеми алгоритму. Демонстрація роботи програми.

    курсовая работа [1,3 M], добавлен 23.06.2010

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

    контрольная работа [13,3 K], добавлен 07.10.2010

  • Алгоритмічна мова програмування універсального призначення Turbo Pascal. Розробка і створення програми для гри "Шибениця". Алгоритм функціонування программи, блок-схема алгоритму. Використання додаткових модулів Graph та Crt у процессі створення програми.

    курсовая работа [2,0 M], добавлен 23.06.2010

  • Створення програми "Аналізатор злочинності в регіоні". Структура зберігаючих даних. Неформальна постановка задачі. Алгоритм основної програми. Введення і збереження інформації. Можливість перегляду всіх існуючих документів. Вихідний код програми.

    курсовая работа [19,4 K], добавлен 07.10.2010

  • Загальна характеристика освітнього процесу. Розробка програми для обліку успішності знань кожного учня та визначення його схильності до тієї чи іншої дисципліни. Створення математичної моделі рейтингу суб'єкта навчання. Інформаційне забезпечення системи.

    курсовая работа [3,9 M], добавлен 01.03.2014

  • Відновлення вхідного сигналу, який заданий графо-аналітично за способом розкладання на гармоніки методом Фур'є. Збереження даних спектрального аналізу у типізованих дискових файлах. Побудова таблиці символьних імен та лістинг програми мовою Turbo Pascal.

    курсовая работа [910,1 K], добавлен 31.10.2013

  • Розробка програми реєстрації і автоматизованого створення звіту на рік по викраденим машинам. Математична модель задачі, структура зберігаючих даних. Створення алгоритмів основної програми на мові Turbo Pascal і процедур Vvod і Red. Вихідний код програми.

    курсовая работа [25,4 K], добавлен 07.10.2010

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.