Автоматизация выдачи справок по товарам в универмаге
Содержание
Введение………………………………………………………………………....3
1 Программная часть…………....…………………………………………….4
1.1 Постановка задачи 4
1.2 Входная и выходная информация 4
1.3 Алгоритм решения задачи 4
1.4 Контрольный пример 13
Заключение………………………………………………………………………16
Введение
Паскаль замечательный язык программирования, который относительно прост в изучении, довольно ясен и логичен и, будучи первым изучаемым языком программирования, приучает к хорошему стилю. Паскаль воспитывает дисциплину структурного программирования и программирования вообще лучше, чем другие языки программирования, такие, как, например Бейсик.
Пакет Turbo Pascal 7.0 обладает ограниченными возможностями и позволяет работать только в обычном режиме MS DOS. Начинающему программисту, по-видимому, целесообразно начать изучение языка и среды именно с этого пакета.
Язык характеризуется расширенными возможностями по сравнению со стандартом, хорошо развитой библиотекой модулей, позволяющих использовать возможности операционной системы, создавать оверлейные структуры, организовывать ввод-вывод, формировать графическое изображение и т.д.
Достоинства
• Удобная среда разработки, включающая функциональный отладчик, доступный в любой момент.
• Конкретная справочная система, по которой можно изучить язык без обращения к сторонним источникам.
• Высокая скорость компиляции, высокая скорость выполнения откомпилированных программ.
• Встроенная возможность использовать вставки на языке ассемблера.
Паскаль высоко используется во многих учебных заведения для обучения программированию.
1 Программная часть
1.1 Постановка задачи
Программа «Расписание» представляет собой алгоритм действий, предназначенный для автоматизированного вывода базы данных для учёта товаров в универмаге.
Программа должна выполнять следующие функции: выдавать по запросу сведения о поступлении товара.
Для этого необходимо записать в программу сведения о поступившем товаре: наименование, дата поступления: день, месяц, год и цена за единицу товара.
Программа должна вывести на экран расписание всех продуктов , удалить по необходимости какой либо продукт, добавить новый продукт в конец базы данных и корректировать выбранный номер товара.
1.2 Входная и выходная информация
Для работы программы «Расписание» необходимы следующие данные о товаре: наименование , дата: день, месяц, год и цена за единицу товара.
Программа отражает все товары в универмаге и выполняет следующие функции: добавляет новый товар в конец базы данных, корректирует выбранный товар и удаляет ненужный товар.
1.3 Алгоритм решения задачи
В исполнительной части программы выводится на экран меню для выбора режима работы:
1 –Формирование новой базы данных.
2 – Просмотр базы данных.
3 – Корректировка базы данных.
4 - Добавление записей в базу данных.
5 - Удаление записи из базы данных.
6 - Конец работы. (рис.1)
Общая схема алгоритма
Рис.1
В программе введены следующие обозначения переменных:
Tovar – компоненты. Это записной тип, имеющий следующие поля: Name – наименование, Price – цена товара, kolvo – количество товара, Data – дата поступления, которая является компонент, это записной тип, имеющие следующие переменные: Day – день поступления, Mon – месяц поступления, Year – год поступления.
Filename – имя файла.
f – имя логического файла.
Tov – компонента файла.
Программа:
Program kursovai;
Uses CRT, Dos;
label menu;
Type
Tf = String[20];
Date = Record
chas : real;
day : 1..31;
Mon : 1..12;
Year : 1..2008;
End;
Tovar = Record
Name : Tf;
Data : Date;
Price : Real;
kolvo: integer;
End;
Var FileName : Tf;
R : Byte;
date1: Date;
year,month,day,dayofweek:word;
hour,minute,second, sec100:word;
{Процедура вывода даты на экран}
Procedure data_vremya;
Begin
TextColor(11);
GoToXY(65,45);
getdate(year,month,day,dayofweek);
writeln(day,'.',month,'.',year);
GoToXY(65,46);
getTime(hour,minute,second,sec100);
writeln(hour,':',minute);
End;
{Процедура написании шапки}
Procedure SHLAPKA;
Begin
Writeln( '╔═════╦═════════════════════╦════════════════╦═════════════╦════════╗');
Writeln( '║ Nom ║ Naimenovanie tovara ║ Vremia i Data ║ Cena tovara ║ Kol-vo ║');
Writeln( '╠═════╬═════════════════════╬════════════════╬═════════════╬════════╣');
End;
{Процедура начальной страницы }
Procedure O_PROGRAMME;
Begin
clrscr;
Textbackground(0);
TextColor(11);
GoToXY(15,10);
writeln(' UNIVERMAG');
GoToXY(15,12); writeln('╔═════════════════════════════════════════════════════╗');
GoToXY(15,13); writeln('║ Prpgrama soderjit naimenovanie tovara v univermage. ║');
GoToXY(15,14); writeln('║ Vipolniaet takie deistvia kak: ║');
GoToXY(15,15); writeln('║ Dobavliaet zapisi, korrektiruet, udalaet i ║');
GoToXY(15,16); writeln('║ vivodit spisok tovara v univermage. ║');
GoToXY(15,17); writeln('╚═════════════════════════════════════════════════════╝');
readln;
End;
{Процедура ввода новых элементов базы данных}
Procedure Vvod(fname : Tf);
Var f : File Of Tovar;
tov: Tovar;
Begin
Clrscr;
Writeln(' FORMROVANIA NOVOI BAZI DANNIH!');
Assign (f, fname);
Rewrite(f);
Writeln('Okonchanie - pusto');
Write('Naimenovanie tovara - '); Readln(tov.name);
While tov.name '' do
Begin
With tov Do
Begin
Writeln('Data postuplenia : ');
Write('Vremia '); Readln(Data.chas);
Write('Den '); Readln(Data.Day);
Write('Mesac '); Readln(Data.Mon);
Write('God '); Readln(Data.Year);
Write('Cena za edinicu tovara - '); Readln(Price);
Write('Kolichestvo v shtukah - '); Readln(kolvo);
End;
Write(f, tov);
Write('Naimenovanie tovara - '); Readln(tov.name);
End; Writeln; Writeln;
Writeln('Dla prodolgenia - ');
Repeat Until keypressed;
Close (f);
End;
{Процедура просмотра элементов базы данных}
Procedure Look (fname : Tf);
Var f : File Of tovar; tov : tovar; i, code : Integer;
Begin
Clrscr;
Write(' Naimenovanie tovara na prilavkah magazina!');
Writeln; Writeln;
Assign (f, fname);
{$i-}
Reset(f);
{$i+}
If code 0 Then Begin
Writeln{('File net!')};
Delay(20000);
End;
SHLAPKA;
i:=0;
While Not eof(f) do
Begin
Read(f, tov);
With tov Do
Begin
i := i + 1;
Write('║',i:3,' ║');
Write(Name:16,' ║');
Write(Data.chas:2:2,'/', Data.Day:2, '/', Data.Mon:2, '/', Data.Year:4,'║');
Write(Price:9:2,' ║');
Writeln(kolvo:5,' ║');
Delay(10000);
End;
End;
Writeln ('╚═════╩═════════════════════╩════════════════╩═════════════╩════════╝');
Writeln; Writeln; Writeln('Dla prodolgenia najmite - ');
data_vremya;
Repeat Until keypressed;
Close (f);
End;
Procedure DeletF (fname:Tf);
Var f, fl:File of tovar; tov:tovar; code: Byte; g:string[4]; tname: string[20];
begin
Clrscr;.....
Введение………………………………………………………………………....3
1 Программная часть…………....…………………………………………….4
1.1 Постановка задачи 4
1.2 Входная и выходная информация 4
1.3 Алгоритм решения задачи 4
1.4 Контрольный пример 13
Заключение………………………………………………………………………16
Введение
Паскаль замечательный язык программирования, который относительно прост в изучении, довольно ясен и логичен и, будучи первым изучаемым языком программирования, приучает к хорошему стилю. Паскаль воспитывает дисциплину структурного программирования и программирования вообще лучше, чем другие языки программирования, такие, как, например Бейсик.
Пакет Turbo Pascal 7.0 обладает ограниченными возможностями и позволяет работать только в обычном режиме MS DOS. Начинающему программисту, по-видимому, целесообразно начать изучение языка и среды именно с этого пакета.
Язык характеризуется расширенными возможностями по сравнению со стандартом, хорошо развитой библиотекой модулей, позволяющих использовать возможности операционной системы, создавать оверлейные структуры, организовывать ввод-вывод, формировать графическое изображение и т.д.
Достоинства
• Удобная среда разработки, включающая функциональный отладчик, доступный в любой момент.
• Конкретная справочная система, по которой можно изучить язык без обращения к сторонним источникам.
• Высокая скорость компиляции, высокая скорость выполнения откомпилированных программ.
• Встроенная возможность использовать вставки на языке ассемблера.
Паскаль высоко используется во многих учебных заведения для обучения программированию.
1 Программная часть
1.1 Постановка задачи
Программа «Расписание» представляет собой алгоритм действий, предназначенный для автоматизированного вывода базы данных для учёта товаров в универмаге.
Программа должна выполнять следующие функции: выдавать по запросу сведения о поступлении товара.
Для этого необходимо записать в программу сведения о поступившем товаре: наименование, дата поступления: день, месяц, год и цена за единицу товара.
Программа должна вывести на экран расписание всех продуктов , удалить по необходимости какой либо продукт, добавить новый продукт в конец базы данных и корректировать выбранный номер товара.
1.2 Входная и выходная информация
Для работы программы «Расписание» необходимы следующие данные о товаре: наименование , дата: день, месяц, год и цена за единицу товара.
Программа отражает все товары в универмаге и выполняет следующие функции: добавляет новый товар в конец базы данных, корректирует выбранный товар и удаляет ненужный товар.
1.3 Алгоритм решения задачи
В исполнительной части программы выводится на экран меню для выбора режима работы:
1 –Формирование новой базы данных.
2 – Просмотр базы данных.
3 – Корректировка базы данных.
4 - Добавление записей в базу данных.
5 - Удаление записи из базы данных.
6 - Конец работы. (рис.1)
Общая схема алгоритма
Рис.1
В программе введены следующие обозначения переменных:
Tovar – компоненты. Это записной тип, имеющий следующие поля: Name – наименование, Price – цена товара, kolvo – количество товара, Data – дата поступления, которая является компонент, это записной тип, имеющие следующие переменные: Day – день поступления, Mon – месяц поступления, Year – год поступления.
Filename – имя файла.
f – имя логического файла.
Tov – компонента файла.
Программа:
Program kursovai;
Uses CRT, Dos;
label menu;
Type
Tf = String[20];
Date = Record
chas : real;
day : 1..31;
Mon : 1..12;
Year : 1..2008;
End;
Tovar = Record
Name : Tf;
Data : Date;
Price : Real;
kolvo: integer;
End;
Var FileName : Tf;
R : Byte;
date1: Date;
year,month,day,dayofweek:word;
hour,minute,second, sec100:word;
{Процедура вывода даты на экран}
Procedure data_vremya;
Begin
TextColor(11);
GoToXY(65,45);
getdate(year,month,day,dayofweek);
writeln(day,'.',month,'.',year);
GoToXY(65,46);
getTime(hour,minute,second,sec100);
writeln(hour,':',minute);
End;
{Процедура написании шапки}
Procedure SHLAPKA;
Begin
Writeln( '╔═════╦═════════════════════╦════════════════╦═════════════╦════════╗');
Writeln( '║ Nom ║ Naimenovanie tovara ║ Vremia i Data ║ Cena tovara ║ Kol-vo ║');
Writeln( '╠═════╬═════════════════════╬════════════════╬═════════════╬════════╣');
End;
{Процедура начальной страницы }
Procedure O_PROGRAMME;
Begin
clrscr;
Textbackground(0);
TextColor(11);
GoToXY(15,10);
writeln(' UNIVERMAG');
GoToXY(15,12); writeln('╔═════════════════════════════════════════════════════╗');
GoToXY(15,13); writeln('║ Prpgrama soderjit naimenovanie tovara v univermage. ║');
GoToXY(15,14); writeln('║ Vipolniaet takie deistvia kak: ║');
GoToXY(15,15); writeln('║ Dobavliaet zapisi, korrektiruet, udalaet i ║');
GoToXY(15,16); writeln('║ vivodit spisok tovara v univermage. ║');
GoToXY(15,17); writeln('╚═════════════════════════════════════════════════════╝');
readln;
End;
{Процедура ввода новых элементов базы данных}
Procedure Vvod(fname : Tf);
Var f : File Of Tovar;
tov: Tovar;
Begin
Clrscr;
Writeln(' FORMROVANIA NOVOI BAZI DANNIH!');
Assign (f, fname);
Rewrite(f);
Writeln('Okonchanie - pusto');
Write('Naimenovanie tovara - '); Readln(tov.name);
While tov.name '' do
Begin
With tov Do
Begin
Writeln('Data postuplenia : ');
Write('Vremia '); Readln(Data.chas);
Write('Den '); Readln(Data.Day);
Write('Mesac '); Readln(Data.Mon);
Write('God '); Readln(Data.Year);
Write('Cena za edinicu tovara - '); Readln(Price);
Write('Kolichestvo v shtukah - '); Readln(kolvo);
End;
Write(f, tov);
Write('Naimenovanie tovara - '); Readln(tov.name);
End; Writeln; Writeln;
Writeln('Dla prodolgenia - ');
Repeat Until keypressed;
Close (f);
End;
{Процедура просмотра элементов базы данных}
Procedure Look (fname : Tf);
Var f : File Of tovar; tov : tovar; i, code : Integer;
Begin
Clrscr;
Write(' Naimenovanie tovara na prilavkah magazina!');
Writeln; Writeln;
Assign (f, fname);
{$i-}
Reset(f);
{$i+}
If code 0 Then Begin
Writeln{('File net!')};
Delay(20000);
End;
SHLAPKA;
i:=0;
While Not eof(f) do
Begin
Read(f, tov);
With tov Do
Begin
i := i + 1;
Write('║',i:3,' ║');
Write(Name:16,' ║');
Write(Data.chas:2:2,'/', Data.Day:2, '/', Data.Mon:2, '/', Data.Year:4,'║');
Write(Price:9:2,' ║');
Writeln(kolvo:5,' ║');
Delay(10000);
End;
End;
Writeln ('╚═════╩═════════════════════╩════════════════╩═════════════╩════════╝');
Writeln; Writeln; Writeln('Dla prodolgenia najmite - ');
data_vremya;
Repeat Until keypressed;
Close (f);
End;
Procedure DeletF (fname:Tf);
Var f, fl:File of tovar; tov:tovar; code: Byte; g:string[4]; tname: string[20];
begin
Clrscr;.....
Толық нұсқасын 30 секундтан кейін жүктей аласыз!!!
Әлеуметтік желілерде бөлісіңіз:
Facebook | VK | WhatsApp | Telegram | Twitter
Қарап көріңіз 👇
Пайдалы сілтемелер:
» Туған күнге 99 тілектер жинағы: өз сөзімен, қысқаша, қарапайым туған күнге тілек
» Абай Құнанбаев барлық өлеңдер жинағын жүктеу, оқу
» Дастархан батасы: дастарханға бата беру, ас қайыру
Соңғы жаңалықтар:
» 2025 жылы Ораза және Рамазан айы қай күні басталады?
» Утиль алым мөлшерлемесі өзгермейтін болды
» Жоғары оқу орындарына құжат қабылдау қашан басталады?