Программа по учету товаров на складе
Краткое сожержание материала:
Размещено на
Аннотация
Данная работа была выполнена на языке Pascal. Паскаль (англ. Pascal) -- язык программирования общего назначения. Один из наиболее известных языков программирования, широко применялся в промышленном программировании, до сих пор используется для обучения программированию в высшей школе, является базой для ряда других языков.
Условие задачи
Написать программу для учета работы магазина DVD-дисков. В программе должна содержаться база наименований товара, цен, производителей и количество дисков на складе. Должны быть следующие функции: добавление элемента в базу, удаление элемента из базы, вывод элементов на экран, сортировка, поиск по названию.
Краткая теория
Метод "пузырька". По-видимому, самым простым методом сортировки является так называемый метод "пузырька". Чтобы уяснить его идею, представьте, что массив (таблица) расположен вертикально. Элементы с большим значением всплывают вверх наподобие больших пузырьков. При первом проходе вдоль массива, начиная проход "снизу", берется первый элемент и поочередно сравнивается с последующими. При этом:
· если встречается более "легкий" (с меньшим значением) элемент, то они меняются местами;
· при встрече с более "тяжелым" элементом, последний становится "эталоном" для сравнения, и все следующие сравниваются с ним.
В результате наибольший элемент оказывается в самом верху массива.
Записи. Запись представляет собой набор элементов разных типов, каждый из которых имеет свое имя и называется полем записи. Тип записи конструируется следующим образом:
record
список полей
список методов
end
Описание процедур и функций
Процедура или функция представляет собой последовательность операторов, которая имеет имя, список параметров и может быть вызвана из различных частей программы. Функции, в отличие от процедур, в результате своего выполнения возвращают значение, которое может быть использовано в выражении. Для единообразия функции и процедуры называются подпрограммами.
Любая используемая в программе процедура или функция должна быть предварительно описана в разделе описаний.
Описание процедуры имеет вид:
procedure имя (список формальных параметров);
раздел описаний
begin
операторы
end;
Описание функции имеет вид:
function имя (список формальных параметров): тип возвращаемого значения;
раздел описаний
begin
операторы
end;
Главная процедура, вызывающая другие процедуры из списка
Процедура создания базы данных
Процедура вывода базы данных на экран
Процедура, меняющая элементы базы данных местами
Процедура добавления записи
Процедура сортировки методом «пузырька»
Процедура удаления записи
Процедура поиска записи в базе данных по наименованию диска
program diski;
uses
crt;
type
spisok = record
vt: string;
nm: integer;
dvm: string;
no: integer;
end;
procedure Sozd(var mas: array of spisok; qty: integer);//создание массива
var
i: integer;
zk: spisok;
begin
setlength(mas, qty);
for i := 0 to high(mas) do
begin
write('Наименование диска: ');
readln(zk.vt);
write('Цена:');
readln(zk.nm);
write('Производитель:');
readln(zk.dvm);
write('Количество на складе:');
readln(zk.no);
writeln;
mas[i].vt := zk.vt;
mas[i].nm := zk.nm;
mas[i].dvm := zk.dvm;
mas[i].no := zk.no;
end;
end;
procedure vyvod(mas: array of spisok);//вывод массива
var
i: integer;
begin
writeln('==============================================');
writeln('№| Наименование диска| Цена | Производитель | Количество на складе');
writeln('==============================================');
for i := 0 to high(mas) do
begin
write(i);
write(' ');
write(mas[i].vt);
write(mas[i].nm:22);
write(mas[i].dvm:16);
write(mas[i].no:15);
writeln;
writeln('==============================================');
end;
end;
procedure swap(var x, y: string);//процедура замены элементов местами
var
t: string;
begin
t := x;
x := y;
y := t
end;
procedure sort(mas: array of spisok);//сортировка
var
i, j: integer;
begin
for j := 1 to high(mas) do
for i := 0 to high(mas) - j do
if (mas[i].nm > mas[i + 1].nm) and (mas[i].nm <> 0) then
begin
swap(mas[i].nm, mas[i + 1].nm);
swap(mas[i].vt, mas[i + 1].vt);
swap(mas[i].dvm, mas[i + 1].dvm);
swap(mas[i].no, mas[i + 1].no);
end;
vyvod(mas);
end;
procedure add(var mas:array of spisok);//добавление элемента
begin
setlength(mas, length(mas) + 1);
write('Наименование диска: ');
readln(mas[high(mas)].vt);
write('Цена: ');
readln(mas[high(mas)].nm);
write('Производитель: ');
readln(mas[high(mas)].dvm);
write('Количество на складе: ');
readln(mas[high(mas)].no);
writeln;
end;
procedure delete(var mas:array of spisok);//удаление записи
var
n: integer;
begin
writeln('Введите номер записи для удаления');
readln(n);
if (n <= high(mas)) then
begin
mas[n].vt := '';
mas[n].nm := 0;
mas[n].dvm := '';
mas[n].no := 0;
end;
swap(mas[n].nm, mas[high(mas)].nm);
swap(mas[n].vt, mas[high(mas)].vt);
swap(mas[n].dvm, mas[high(mas)].dvm);
swap(mas[n].no, mas[high(mas)].no);
setlength(mas, length(mas) - 1);
vyvod(mas);
end;
procedure poisk( mas:array of spisok);//поиск по наименованию
var
i: integer;
name: string;
begin
writeln('Введите название для поиска');
readln(name);
for i := 0 to high(mas) do
begin
if name = mas[i].vt then
Автоматизация комплекса задач по учету движения товаров на складе
Проектирование и реализация комплекса задач автоматизации учета движения товаров на складе в ЗАО "ГРЕЦ" и технико-экономические расчеты. Обоснование в...
Управление технологическим процессом хранения товаров на складе
Обзор торгово-технологических процессов на складах. Поступление и приемка товаров, управление движением и хранением товаров на складе. Управление погр...
Автоматизация учета товаров на складе на примере ООО "Петроспецпродукт"
Организация бухгалтерского учета и документооборота в ООО "Петроспецпродукт". Учет поступления, реализации и отпуска товаров. Инвентаризация товарно-м...
Моделирование бизнес–процессов учета товаров на складе в ООО "ТНТ Трейдинг"
Построение моделей деятельности "как есть" (AS–IS) и "как должно быть" (TO–BE) для повышения эффективности учета товаров на складе ООО "ТНТ Трейдинг"....
Автоматизация движения товаров на оптовом складе пищевой продукции
Объективная необходимость внедрения автоматизированных систем управления. Готовая продукция, порядок ее оценки, учет товаров и товарных операций в тор...