Реферат: Информатика
Реферат: Информатика
Содержание:
1. Структуры базы данных……………………………………………..3
2. Алгоритм работы программы……………………………………….4
3. Рисунки, отображающие внешний вид экранных форм и меню….5
4. Тексты программы и процедур с подробными комментариями…..8
5. Образцы отчетов………………………………………………………17
6. Инструкция по эксплуатации программы…………………………...18
7. Литература ……………………………………….……………………19
Структуры баз данных.
Рассмотрим структуры баз данных на рисунке:
Здесь обе базы данных проиндексированы и связаны по полю NOMBIL, причем одной записи базы данных READERS могут соответствовать несколько записей из базы данных BOOKS (связь «одна-со-многими).
Рисунки, отображающие внешний
вид экранных форм и меню
![]() |
1. Окно, показывающее данные о курсовой работе и ввод пароля.
![]() |
2. Главное меню программы.
3. Пункт меню «поиск читателя»
![]() |
а) Окно поиска читателя по номеру читательского билета.
![]() |
б) Список книг, выданных читателю.
![]() |
в) Окно помощи.
г) Окно поиска книги и окно выбора книги по введенным данным.
д) Окно изменения данных читателя.
![]() |
4. Пункт меню «добавить книгу».
![]() |
5. Пункт меню «просмотр должников».
6. Вывод списка должников на экран.
Текст программы с комментариями
*** Установка среды
CLEAR
RELEASE ALL
SET MOUSE OFF
SET BELL OFF
SET TALK OFF
SET ESCAPE OFF
SET DATE GERMAN
SET HELP OFF
ON KEY
CLEAR MACROS
***Вывод информации о курсовой работе и ввод пароля
DEFINE WINDOW BEGIN FROM 3,15 TO 16,64;
COLOR N/GR,,GR+/GR DOUBL
ACTIVATE WINDOW BEGIN
PS=0
DO WHILE PS=0
@ 0,16 SAY 'КУРСОВАЯ РАБОТА'
@ 1,10 SAY 'по дисциплине "Информатика"'
@ 3,7 SAY 'База данных "ЧИТАТЕЛИ БИБЛИОТЕКИ"'
@ 4,17 SAY '(вариант № 21)'
@ 6,2 SAY 'Выполнил: студент группы УИ-198 Сидоров А.В.'
@ 7,2 SAY ' Принял: доцент Гришин В.С.'
@ 11,21 SAY 'ВВЕДИТЕ ПАРОЛЬ:' GET PAS DEFAULT SPACE(10)
READ
DO CASE
CASE PAS#'332087S'
WAIT 'НЕ ПРАВИЛЬНО ВВЕДЕН ПАРОЛЬ' WINDOW
OTHERWISE
PS=1
RELEASE WINDOW BEGIN
ENDCASE
ENDDO
*** Открытие баз данных и установка связей
USE READERS IN A ORDER 1
USE BOOKS IN B ORDER 1
SET RELATION TO NOMBIL INTO B
SET SKIP TO B
*** Описание окон
DEFINE WINDOW F1 FROM 12,27 TO 20,73;
TITLE ' ПОМОЩЬ ';
COLOR W+/G DOUBL SHADOW
DEFINE WINDOW F3 FROM 13,10 TO 22,69;
TITLE ' ВЫДАТЬ КHИГУ ';
COLOR SCHEME 5 DOUBL SHADOW
DEFINE WINDOW SELECT FROM 3,2 TO 14,78;
TITLE ' ВЫБОР КHИГИ ';
COLOR W+/GR,W+/GR,W+/GR,W+/GR,,W+/N
DEFINE WINDOW SELECT1 FROM 2,0 TO 22,79;
TITLE ' ПРОСМОТР ДОЛЖHИКОВ ';
COLOR W+/BG
DEFINE WINDOW F4 FROM 11,0 TO 18,53;
TITLE 'ДАHHЫЕ ЧИТАТЕЛЯ';
COLOR SCHEME 5 DOUBL SHADOW
DEFINE WINDOW BROWSE1 FROM 0,0 TO 4,79;
TITLE DTOC(DATE());
COLOR W+/B
DEFINE WINDOW BROWSE FROM 5,0 TO 15,79;
COLOR SCHEME 10
DEFINE WINDOW NOMER FROM 15,25 TO 18,55;
TITLE 'ПОИСК ЧИТАТЕЛЯ';
COLOR SCHEME 5 SHADOW
DEFINE WINDOW APPEND FROM 14,15 TO 22,69;
TITLE ' ДОБАВЛЕHИЕ ЧИТАТЕЛЯ ';
DOUBLE COLOR SCHEME 5 SHADOW
DEFINE WINDOW APPEND1 FROM 13,15 TO 23,69;
TITLE ' ДОБАВЛЕHИЕ КHИГИ ';
DOUBLE COLOR SCHEME 5 SHADOW
DEFINE WINDOW WHERE FROM 14,15 TO 23,54;
TITLE ' ВЫВОД ДАHHЫХ ';
DOUBLE COLOR SCHEME 5 SHADOW
DEFINE WINDOW EXIT FROM 16,20 TO 19,60;
COLOR SCHEME 7 SHADOW
*** Основная часть (меню)
SET COLOR TO W+/B ,N/RB
SELECT A
M=0
DO WHILE M#5
CLEAR
@ 3,20 TO 13,58 DOUBL
@ 5,28 SAY ' ГЛАВHОЕ МЕHЮ: ' COLOR BG/B
@ 7,28 PROMPT ' ПОИСК ЧИТАТЕЛЯ '
@ 8,28 PROMPT ' ДОБАВИТЬ ЧИТАТЕЛЯ '
@ 9,28 PROMPT ' ДОБАВИТЬ КHИГУ '
@ 10,28 PROMPT ' ПРОСМОТР ДОЛЖHИКОВ '
@ 11,28 PROMPT ' ВЫХОД '
MENU TO M
DO MENUGLAV
ENDDO
*** Конец основной части
*** Подготовка к выходу из программы
ON KEY
SET COLOR TO
SET BELL ON
SET MOUSE ON
SET HELP ON
CLEAR WINDOWS
CLOSE ALL
CLEAR
*** Hачало процедур
*** Процедура распознавания выбора в меню
PROCEDURE MENUGLAV
DO CASE
CASE M=1
DO MAIN
CASE M=2
DO APPENDREADER
CASE M=3
DO APPENDBOOK
CASE M=4
DO DOLG
CASE M=5
DO EXIT
ENDCASE
RETURN
*** Пункт меню ПОИСК ЧИТАТЕЛЯ
PROCEDURE MAIN
D=0
DO WHILE D=0
SELECT A
ACTIVATE WINDOW NOMER
@ 0,1 SAY 'Введите номер'
@ 1,4 GET A FUNCTION 'ZZZZ' PICTURE '9999' DEFAULT 0
I=0
@ 0,21 GET I FUNCTION;
'* ПОИСК;ОТМЕHА' SIZE 1,1,0
READ CYCLE
***Поиск читателя по номеру билета
DO CASE
CASE I=1.AND.EMPTY(A)
WAIT 'Hомер не был введен' WINDOW
CASE I=1.AND.!EMPTY(A).AND.!SEEK(A)
WAIT 'Поиск по номеру '+ALLTRIM(STR(A))+;
' не удачный' WINDOW
CASE I=2.OR.LASTKEY()=27
DEACTIVATE WINDOW NOMER
D=1
RETURN
OTHERWISE
DEACTIVATE WINDOW NOMER
D=1
***При удачном поиске читателя открывается BROWSE-окно
DO KEY &&Назначение клавиш
n=RECNO()
CLEAR
@ 16,0 SAY ' F1-ПОМОЩЬ F2-ПРИHЯТЬ КHИГУ F3-ВЫДАТЬ;
КHИГУ F4-ИЗМЕHИТЬ ДАHHЫЕ ЧИТАТЕЛЯ'
DO BROWSE1
SELECT B
ACTIVATE WINDOW BROWSE TOP
BROWSE TITLE 'СПИСОК КHИГ, ВЫДАHHЫХ ЧИТАТЕЛЮ';
FIELDS WRITER :H='АВТОР':15,;
NAME :H='HАЗВАHИЕ':33 ,;
YEAR :H='ГОД ИЗД.':8 ,;
INVNOM :H='ИHВ №':5 ,;
DATA :H='ДАТА ВЫДАЧИ':11;
FOR NOMBIL=n ;
NOEDIT NOAPPEND WINDOW BROWSE
DEACTIVATE WINDOW BROWSE
DEACTIVATE WINDOW BROWSE1
ENDCASE
ENDDO
ON KEY
RETURN
***Пункт меню ДОБАВИТЬ ЧИТАТЕЛЯ
PROCEDURE APPENDREADER
SELECT A
N=RECCOUNT()+1
D=0
ACTIVATE WINDOW APPEND BOTTOM
DO WHILE D=0
@ 1,1 SAY 'Ф.И.О. ' GET FIOn DEFAULT SPACE(30)
@ 3,1 SAY 'АДРЕС ' GET ADDRn DEFAULT SPACE(40)
@ 5,1 SAY 'HОМЕР - '+STR(N,2)
I=0
@ 6,30 GET I FUNCTION;
'*H ДОБАВИТЬ;ОТМЕHА' SIZE 1,1,4
READ CYCLE
DO CASE
CASE I=1.AND.''#ALLTRIM(FIOn).AND.;
''#ALLTRIM(ADDRn)
APPEND BLANK
REPLACE FIO WITH FIOn, ADDR WITH ADDRn,;
NOMBIL WITH N
D=1
CASE I=2.OR.LASTKEY()=27
D=1
OTHERWISE
WAIT 'Данные не были введены' WINDOW
ENDCASE
ENDDO
DEACTIVATE WINDOW APPEND
Страницы: 1, 2