Файл: Курсовой проект " Программирование на языке Turbo Pascal и в судб visual FoxPro ".doc
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 08.11.2023
Просмотров: 26
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Федеральное агентство по образованию
Государственное образовательное учреждение высшего профессионального образования
ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ УПРАВЛЕНИЯ
КУРСОВОЙ ПРОЕКТ:
“Программирование на языке TurboPascal и в СУДБ VisualFoxPro“.
ВАРИАНТ № 8
Проект подготовлен студенткой ________ курса,
заочного отделения, группа __________________
__________________________________________
Москва, 2006
СОДЕРЖАНИЕ
КУРСОВОЙ ПРОЕКТ: 1
СОДЕРЖАНИЕ 2
ВВЕДЕНИЕ 3
ЗАДАНИЕ ДЛЯ РАЗРАБОТКИ ПРОГРАММЫ 4
Район 4
ПРОРАММИРОВАНИЕ В СРЕДЕ TURBO PASCAL 4
1.Структурная организация файлов. 5
2.Структурная организация программы. 5
3.Алгоритм подключения базы данных. 6
4. Алгоритм организации меню. 7
5.Алгоритмы работы с файлом. 8
6. Алгоритм работы с запросом. 10
7. Алгоритм работы с отчетом. 10
8. Алгоритм работы с перекрестной таблицей. 11
9. Текст программы. 11
10. Программирование в среде Microsoft Visual FoxPro. 24
Список используемой литературы. 25
ВВЕДЕНИЕ
Одним из наиболее важных результатов научно-технической революции является бурная компьютеризация практически всех отраслей человеческой деятельности, поэтому современную цивилизацию называют информационной. В прежние времена жизнеспособность того или иного общества определялась природными ресурсами, которыми оно располагало. Сегодня все большее значение приобретает способность этого общества управлять информационными процессами. Умение эффективно отбирать, накапливать, хранить, обрабатывать и анализировать информацию является неотъемлемой чертой руководителя-профессионала.
Компьютерное образование, которому в последнее время уделяется большое внимание, должно включать не только знание об устройстве вычислительных машин, но и умение применять эти знания в своей профессиональной деятельности.
Главными задачами моего курсового проекта являются:
-
развитие навыков работы в средах Turbo Pascal и Microsoft Visual FoxPro; -
развитие алгоритмического мышления.
ЗАДАНИЕ ДЛЯ РАЗРАБОТКИ ПРОГРАММЫ
Код | Наименование предприятия | Район | Выпуск продукции по кварт. |
НЕОБХОДИМО:
-
Дать сведения о выпуске продукции суммарно по предприятиям заданного района. -
Дать справку о выпуске продукции отдельно по каждому району -
Напечатать сведения о выпуске продукции по каждому району, расположив районы в порядке убывания объема выпуска.
ПРОРАММИРОВАНИЕ В СРЕДЕ TURBO PASCAL
Паскаль - популярный и широко используемый язык обращения с ЭВМ, завоевавший в свое время всеобщее признание как за рубежем, так и в нашей стране. Его автором является специалист по вычислительной технике из Цюриха Н.Вирт. Описание языка было впервые опубликовано в 1971 г. Название язак получил в честь французского ученого XVII в., который изобрел автоматическое устройство для суммирования чисел.
В 1973 г. был разработан первый транслятор с языка Паскаль. В настоящее время компиляторы для него применяются на ЭВМ многих типов, что дает возможность широко использовать этот язык для практического программирования. В нем сконцентрированы многие лучшие черты других языков предшественников, а так же нашли отражение концепции структурированного программирования, основные идеи которого были высказаны Э.Дейкстрой.
Паскаль позволяет работать с данными сложной структуры, обеспечивает контроль типов данных, имеет развитые средства для выделения отдельных частей программ в самостоятельные программные единицы и т.д. Все это делает его универсальным инструментом высокого уровня. Он с успехом используется как для решения задач прикладного характера, так и для разработки системных программ.
-
Структурная организация файлов.
Д
ля достижения определенной логической структуры программы, для облегчения ее программирования и компилирования воспользуемся свойством модульности. Процедуры, относящиеся к главному файлу программы (main.pas), поместим в отдельные файлы с соответствующими идентификационными именами (dekor.pas, inform.pas, menu.pas). База данных расположена в файлах table1, table2.
-
Структурная организация программы.
Программа имеет следующую структурную организацию:
-
блок описания переменных, в котором создаются новые типы данных, определяются записи, связываются имена переменных с выбранными типами, резервируются массивы; -
блок подключения файлов с дополнительными процедурами:
dekor.pas - файл с процедурами вывода на экран рамок, шапок для таблиц;
inform.pas - файл с процедурой по подключению базы данных, определению кол-ва записей в каждом файле;
-
блок главного меню, обеспечивающий диалог пользователя с ЭВМ; -
блоки процедур работы с первой и со второй таблицей, включающие просмотр, добавление, редактирование и удаление записи; -
блоки запроса, отчета и перекрестной таблицы;
-
Алгоритм подключения базы данных.
Алгоритм подключение базы данных включает два этапа: подключение файла с первой таблицей и подключение файла со второй таблицей. Рассмотрим схему первого этапа.
Аналогичную процедуру проводим и со вторым файлом. Таким образом перед началом обработки информации, находящейся в базе данных, нам известно все необходимое.
Р
ис. работы процедуры подключения базы данных.
4. Алгоритм организации меню.
Для упрощения диалога пользователя с ЭВМ, для осуществления выбора необходимой задачи, создадим меню.
Наглядное представление работы меню в режиме Dos.
Блок вывода меню.
-
Алгоритмы работы с файлом.
Для организации работы с таблицами было создано соответствующее меню, алгоритм которого совпадает с алгоритмом главного меню.
Р ассмотрим блок-схемы работы с записями, представленными в меню.
Просмотр всех записей. Добавление записи.
Наглядное представление просмотра таблицы в режиме Dos:
Код | Выпуск продукции | Район |
001-2 | 1236 | Алтуфьево |
002-3 | 1237 | Очаково |
003-1 | 1238 | Фили |
004-4 | 1239 | Москворечье |
Редактирование записи.
Редактирование определенной записи в файле осуществляется путем:
-
открытия файла; -
позиционирования на месте данной записи в файле, -
вводом в оперативную память новых данных, -
записью новых данных на место прежних, -
закрытием файла.
Удаление записи.
Удаление определенной записи в файле осуществляется путем:
-
открытием файла, -
позиционированием и считыванием записи, следующей за удаляемой, -
запись считанных данных на место удаляемой записи; -
последующее перемещение записей; -
отсечение от файла последней записи; -
уменьшение счетчика записей файла; -
закрытие файла.
6. Алгоритм работы с запросом.
7
. Алгоритм работы с отчетом.
8. Алгоритм работы с перекрестной таблицей.
9. Текст программы.
Файл dekor.
pas
procedure ramka0(x1,x2,x3:integer);
var j:byte;
begin
gotoxy(x1,x2);
for j:=1 to x3 do write(#205);
end;
procedure ramka1;
var j:byte;
begin
gotoxy(23,1);write(#201);
for j:=1 to 32 do
write(#205);write(#187);
gotoxy(23,2);write(#186);gotoxy(56,2);writeln(#186);
gotoxy(23,3); write(#200);
for j:=1 to 32 do
write(#205);write(#188);
end;
procedure ramka2;
var j:byte;
begin
gotoxy(15,4);write(#201);
for j:=1 to 50 do
write(#205);write(#187);
gotoxy(15,5);
for j:=1 to 10 do begin
write(#186);gotoxy(66,4+j);writeln(#186);gotoxy(15,j+5);end;
write(#200);
for j:=1 to 50 do
write(#205);write(#188);
end;
procedure shapka1;
begin
gotoxy(32,1);write('* I Таблица *');
ramka0(15,2,47);ramka0(15,4,47);
gotoxy(15,3); write(' Наименование предприятия');
gotoxy(32,3); write(' Район ');
gotoxy(51,3); write(' Выпуск продукции ');
end;
procedure shapka2;
begin
gotoxy(32,1);write('* II Таблица *');
ramka0(24,2,30);ramka0(24,4,30);
gotoxy(24,3); write(' Район ');
end;
Файл inform.pas
procedure info;
begin
clrscr; ramka0(10,4,57); gotoxy(20,3);
write('* Подключение файлов к программе *'); gotoxy(5,5);
write('Введите индифик.имя файла с первой таблицей: '); readln(name_file1);
assign(file_table1,name_file1);
{$i-}
reset(file_table1);
if ioresult<>0
then
begin
gotoxy(5,6);write('Данного файла нет, он будет создан.');
rewrite(file_table1);
end
else
begin
gotoxy(5,6);writeln('Данный файл действительно существует.');
while not EOF(file_table1) do
begin
read(file_table1,dano1);count1:=count1+1;
end;
end;
close(file_table1);
{$i+}
gotoxy(5,7);write('Введите индифик.имя файла со второй таблицей: ');
readln(name_file2); assign(file_table2,name_file2);
{$i-}
reset(file_table2);
if ioresult<>0
then
begin
gotoxy(5,8);write('Данного файла нет, он будет создан.');
rewrite(file_table2);
end
else
begin
gotoxy(5,8);write('Данный файл действительно существует.');
while not EOF(file_table2) do
begin
read(file_table2,dano2);count2:=count2+1;
end;
end;
close(file_table2);
{$i+}
repeat until keypressed;
end;
Файл menu.pas
procedure creat_main_menu;
begin
clrscr; ramka1;ramka2;gotoxy(25,2);
highvideo;write(' М е н ю п р о г р а м м ы ');normvideo;
ramka0(10,18,57); gotoxy(1,19);write('Справка: ');
write(' выбор определенного пункта меню осуществляется стрелками,');
gotoxy(10,20); write(' с последующим нажатием - Enter,');
for i:=1 to 6 do
begin
gotoxy(17,4+i);
if i=y then begin textcolor(white);
textbackground(7)
end
else begin textcolor(7);
textbackground(black)
end;
write(main_menu[i]);
end;
textcolor(7); textbackground(black);
end;
procedure creat_table_menu(ab:string);
begin
clrscr; ramka1; ramka2; gotoxy(27,2);
highvideo;write(' М е н ю ',ab,' т а б л и ц ы ');normvideo;
ramka0(10,18,57); gotoxy(1,19);write('Справка: ');
write(' выбор определенного пункта меню осуществляется стрелками,');
gotoxy(10,20); write(' с последующим нажатием - Enter,');
for i:=1 to 5 do
begin
gotoxy(17,4+i);
if i=y then begin textcolor(white);
textbackground(7)
end
else begin textcolor(7);
textbackground(black)
end;
write(table_menu[i]);
end;
textcolor(7); textbackground(black);
end;