Автоматизований облік надходження, зберігання і збуту продукції на товарній базі

Даною курсовою роботою я показав свої практичні знання з програмування в середовищі Turbo Pascal. Дана мова проста ы в той

Автоматизований облік надходження, зберігання і збуту продукції на товарній базі

Контрольная работа

Компьютеры, программирование

Другие контрольные работы по предмету

Компьютеры, программирование

Сдать работу со 100% гаранией

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Автоматизований облік надходження, зберігання і збуту продукції на товарній базі

 

 

Вступ

 

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

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

 

 

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

 

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

 

Розробити програму - «товарна база» для збереження та перегляду, а також автоматизованої обробки інформації що надає користувач.

üВведення і збереження інформації в файлі:

oНазва товарної бази

oПІБ власника товарної бази

oНадходження товару;

oПродаж товару

oЗберігання товару.

üАвтоматизований аналіз по всім видам товару

oСума по всім видам товару з надходження

oСума по всім видам товару з продажу

oСума по всім видам товару з зберігання

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

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

oПерегляд скороченого варіанту бази

oПерегляд повного варіанту даних, які занесені до бази

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

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

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

 

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

 

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

Позначимо сукупність всіх даних, які будуть заноситись до бази даних через множину А, таким чином А={А1,А2,А3}, Аі - множина всієї продукції що стосується складу, А1 - Надходження продукції на склад, А2 - продах продукції зі складу, А3 - продукція яка зберігається на складі

Таким чином козле Аі = {B1, B2, …, Bj}, де Bj - конкретний товар i=1..n

Результат:

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

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

 

Р1 = ∑ B1jР2 = ∑ B2j Р3 = ∑ B3j

 

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

 

Rec - запис для введення та зберігання даних

·FIO - ПІБ власника складу

·Name - Назва складу

·Import - масив для вводу кількості продукції яка ввозиться на склад

·export - масив для вводу кількості продукції яка продається зі складу

·sohr - масив для вводу кількості продукції яка зберігається на складі

sa - введення та збереження даних в файл

n4 - управляюча частина меню

tie - статична частина меню

a_z - процедура яка проводить аналіз всіх даних та сумує по кожному продукту за певний період.

 

 

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

 

uses CRT, dos;

type rec=record

FIO:string[80];

name:string[40];

import:array [1.. 5,1..10] of integer;

end;

var a:char; b, i:byte;

s, s1, s2, s3, s4, s5, s6, s7, s8, s9:string;

flag:boolean;

{s1, s2, s3, s4:string;}

l:byte;

h:char;

{-}

procedure analiz;

var qw, as, zx:rec;

f1: file of rec;

f2: file of rec;

f3: file of rec;

i:integer;

mas: array [1.. 3,1..10] of integer;

begin

assign (f1,'c:\imp.zoo');

assign (f2,'c:\eks.zoo');

assign (f3,'c:\sra.zoo');

if (FSearch ('imp.zoo', 'c:\')='') or (FSearch ('eks.zoo', 'c:\')='') or (FSearch('sra.zoo', 'c:\')='') then

begin

window (1,1,40,25);

textbackground(1);

clrscr;

gotoxy (2,10);

textcolor(4);

write ('Ne pravelnaya operaciya, ne vse dannie');

end

else

begin

reset(f1);

reset(f2);

reset(f3);

seek (f1,0);

seek (f2,0);

seek (f3,0);

read (f1, qw);

read (f2, as);

read (f3, zx);

window (1,1,40,25);

textbackground(1);

clrscr;

{gotoxy (5,2);}

write ('Import Eksport Sohraneno');

for i:=1 to 10 do

begin

mas [1, i]:=qw.import [1, i]+qw.import [2, i]+qw.import [3, i];

mas [2, i]:=as.import [1, i]+as.import [2, i]+as.import [3, i];

mas [3, i]:=zx.import [1, i]+zx.import [2, i]+zx.import [3, i];

end;

window (1,3,8,12);

for i:=1 to 10 do

writeln (mas[1, i]);

window (16,3,25,12);

for i:=1 to 10 do

writeln (mas[2, i]);

window (32,3,40,12);

for i:=1 to 10 do

writeln (mas[3, i]);

end;

close(f1); close(f2); close(f3);

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 save (x1, y1, x2, y2, a:byte; s1:string);

var qwerty:rec;

f1: file of rec;

xn, yn, i:byte;

begin

Window (x1, y1, x2, y2);

textbackground(a);

clrscr;

xn:=3; yn:=2;

rama (1,1,39,15,0,14);

rama (1,1,15,15,0,14);

window (2,4,15,23);

writeln (' Sahar');

writeln (' Muka');

writeln (' Sol');

writeln (' Gre4ka');

writeln (' Myaso');

writeln (' Kurici');

writeln (' Droji');

writeln (' Maslo');

writeln (' Sir');

writeln (' Hleb');

rama (1,1,39,4,0,14);

gotoxy (17,2);

write (' 2006 2007 2008');

gotoxy (1,3); write(#195);

gotoxy (39,3); write(#180);

gotoxy (15,3); write(#197);

gotoxy (15,1); write(#194);

window (1,1,40,25);

gotoxy (15,14); write(#193);

gotoxy (2,2);

write(s1);

window (16,3,39,24);

for i:=1 to 10 do

begin

gotoxy (xn, yn);

readln (qwerty.import [1, i]);

gotoxy (xn+8, yn);

readln (qwerty.import [2, i]);

gotoxy (xn+16, yn);

readln (qwerty.import [3, i]);

yn:=yn+1;

end;

window (1,17,39,24);

gotoxy (5,2);

writeln ('Vvedite FIO - ');

gotoxy (21,2);

readln (qwerty.fio);

gotoxy (5,4);

writeln ('Vvedite nazvanie - ');

gotoxy (26,4);

readln (qwerty.name);

assign (f1,'c:\'+s1 [1]+s1 [2]+s1 [3]+'.zoo');

rewrite(f1);

write (f1, qwerty);

close(f1);

end;

{-}

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

begin

b:=0;

a:=readkey;

if a=#0 then

b:=ord(readkey);

end;

{-}

procedure na4 (st:string; l, p:byte);

begin

rama (15,11,35,14,0,14);

gotoxy (2,2);

textbackground(p);

textcolor(l);

write(st);

end;

{-}

procedure title (s1, s2, s3, s4, s5, s6, s7, s8, s9:string);

begin

na4 (s5,4,0);

textbackground(1);

textcolor(14);

window (15,3,35,10);

clrscr;

writeln(s1); writeln;

writeln(s2); writeln;

writeln(s3); writeln;

write(s4); writeln;

window (15,15,35,23);

clrscr;

writeln(s6); writeln;

writeln(s7); writeln;

writeln(s8); writeln;

write(s9); writeln;

end;

{-}

procedure ramo4ka (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 menu_1 (s1, s2, s3, s4:string);

begin

textcolor(15);

gotoxy (8,10);

write (s1);

gotoxy (8,13);

write (s2);

gotoxy (8,16);

write (s3);

gotoxy (8,19);

write (s4);

end;

procedure menu_2 (i:byte; s:string);

var a, b:byte;

begin

case i of

1: begin

window (4,9,18,11);

textbackground(2);

textcolor(0);

clrscr;

gotoxy (4,2);

write(s)

end;

2: begin

window (4,12,18,14);

textbackground(2);

textcolor(0);

clrscr;

gotoxy (4,2);

Похожие работы

1 2 >