Автоматизований облік надходження, зберігання і збуту продукції на товарній базі
Розробка програми "товарна база", призначеної для збереження та перегляду, а також автоматизованої обробки інформації, що надає користувач. Формальна та неформальна постановка задачі. Структура зберігаючих даних. Вихідний код програми, її апробація.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | контрольная работа |
Язык | украинский |
Дата добавления | 07.10.2010 |
Размер файла | 13,3 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Автоматизований облік надходження, зберігання і збуту продукції на товарній базі
Вступ
Обіг продукції - це дійова економіка. Для того щоб розвиватися економіка повинна рухатися, а як вона рухається завдяки обороту повару та грошей. Створити програму за допомогою якої можливо прослідкувати обіг на складі, за певний період
Я вибрав мову програмування 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);
write(s);
end;
3: begin
window (4,15,18,17);
textbackground(2);
textcolor(0);
clrscr;
gotoxy (4,2);
write(s);
end;
4: begin
window (4,18,18,20);
textbackground(2);
textcolor(0);
clrscr;
gotoxy (4,2);
write(s);
end;
end;
end;
{==================}
begin
textmode(co40);
window (1,1,40,25);
clrscr;
s1:='Postavka';
s2:='Vigruzka';
s3:='Na sohran';
s4:='Zakon4it';
menu_1 (s1, s2, s3, s4);
i:=1;
menu_2 (i, s1);
repeat
newreadkey (h, l);
case l of
80:i:=i+1;
72:i:=i-1;
end;
case i of
0:i:=4;
5:i:=1;
end;
case i of
1:begin
If h=#13 then
save (1,1,40,25,0,'import');
window (1,1,40,25);
textbackground(0);
clrscr;
menu_1 (s1, s2, s3, s4);
menu_2 (i, s1);
end;
2:begin
If h=#13 then
save (1,1,40,25,0,'eksport');
window (1,1,40,25);
textbackground(0);
clrscr;
menu_1 (s1, s2, s3, s4);
menu_2 (i, s2);
end;
3:begin
If h=#13 then
save (1,1,40,25,0,'Sohran');
window (1,1,40,25);
textbackground(0);
clrscr;
menu_1 (s1, s2, s3, s4);
menu_2 (i, s3);
end;
4:begin
If h=#13 then
halt;
window (1,1,40,25);
textbackground(0);
clrscr;
menu_1 (s1, s2, s3, s4);
menu_2 (i, s4);
end;
end;
until h=#27;
end.
Висновок
Даною курсовою роботою я показав свої практичні знання з програмування в середовищі Turbo Pascal. Дана мова проста ы в той же час дає можливість створювати досить багатофункціональні програми. Актуальність теми полягає в тому що дана програмо може застосовуватися в сфері економіки в практиці.
На початку були поставлені певні задачі, даною роботою я виконав всі вимоги. Мною були застосовані як вже готові процедури так і створені власні.
Список використаної літератури
1. Струков В.М. Основи алгоритмизации и програмирования. Часть 2. Учебное пособие. - Харьков: Изд. Нац. ун-та внутр. дел, 2003. - 188 с.
2. Сердюченко В.Я. Розробка алгоритмів та програмування на мові Turbo Pascal. - X., 1995.
3. Немнюгин С.А. Turbo Pascal. - СПб.: Питер, 2002. - 496 с.: ил.
Подобные документы
Програма "Приватка" для збереження та перегляду всієї інформації, що стосується пошуку підприємства. Розробка алгоритму та програмування на мові Turbo Pascal. Формальна та неформальна постановка задачі. Структура зберігаючих даних. Вихідний код програми.
курсовая работа [20,9 K], добавлен 07.10.2010Створення програми "Аналізатор злочинності в регіоні". Структура зберігаючих даних. Неформальна постановка задачі. Алгоритм основної програми. Введення і збереження інформації. Можливість перегляду всіх існуючих документів. Вихідний код програми.
курсовая работа [19,4 K], добавлен 07.10.2010Розробка програми "Злочин", що призначена для збереження та перегляду, а також автоматичного аналізу всієї інформації про злочинність. Порядок і основні принципи формування структури даних, постановка задачі. Написання та лістинг розробленої програми.
контрольная работа [12,3 K], добавлен 07.10.2010Розробка програми реєстрації і автоматизованого створення звіту на рік по викраденим машинам. Математична модель задачі, структура зберігаючих даних. Створення алгоритмів основної програми на мові Turbo Pascal і процедур Vvod і Red. Вихідний код програми.
курсовая работа [25,4 K], добавлен 07.10.2010Створення спеціалізованої програми на мові програмування Турбо Паскаль для обробки інформації, що вноситься в бази даних по приватних підприємствах. Постановка задачі і структура зберігаючих даних. Розробка алгоритмів основної програми та процедури Is.
курсовая работа [27,0 K], добавлен 07.10.2010Розробка програми "Облік вогнепальної зброї" для більш простої та оптимальної обробки інформації по зброї. Алгоритм процедури Zap. Занесення відомостей по вогнепальній зброї користувачем та зберігання її до типізованого файлу. Вихідний код програми.
курсовая работа [30,4 K], добавлен 07.10.2010Розробка програми "Авто" для введення та збереження інформації про власників та їхні автомобілі. Побудова математичної моделі. Критерії вибору та пошуку даних. Структура введених та збережених у файлах програми даних. Алгоритм основної програми та її код.
курсовая работа [20,3 K], добавлен 07.10.2010Розробка програми мовою Turbo Pascal для автоматизації процесу перевірки оцінок та аналізу успішності групи, для збереження і перегляду всієї інформації стосовно навчання. Формальна постановка задачі, створення алгоритму та вихідного коду програми.
курсовая работа [36,0 K], добавлен 13.10.2010Порядок та характеристика етапів розробки та апробації програми "водій" для збереження повноти інформування правоохоронних органів, та швидкості її надання. Структура зберігаючих даних. Формування вихідного коду даної програми. Створення головного поля.
контрольная работа [14,3 K], добавлен 07.10.2010Розробка програми реєстрації автомобілів для збереження та перегляду інформації про модель машини, рік її випуску, об'єм двигуна і витрати палива. Складання алгоритмів розв'язання поставленої задачі та написання тексту програми в середовищі Turbo Pascal.
курсовая работа [29,7 K], добавлен 13.10.2010