Xreferat.com » Рефераты по информатике и программированию » Информационно-справочная система, обеспечивающая работу с базой данных Bit

Информационно-справочная система, обеспечивающая работу с базой данных Bit

makewindow(6,30,26,"Просмотp базы",0,0,25,80),

sound(5,220),

repeat,

nl,

nl,

cursor(10,0),

write(" 1 - Просмотр основной базы"),nl,

write(" 2 - Просмотр базы BSTUD"),nl,

write(" 3 - Выход в главное меню" ),nl,

write(" =>"),

readint(X),

clearwindow,

X>0,X<=3,

view(X),

clearwindow,

X=3,!,

removewindow.


/* Процедура загрузки базы данных, стр.10 */


working(4):-

makewindow(7,62,120,"Загрузка",5,10,15,60),

sound(5,220),

repeat,

nl,nl,

write("1 - Загрузить основную базу из выбранного файла"),nl,

write("2 - Загрузить основную базу из файла bit.dat"),nl,

write("3 - Загрузить базу BSTUD из выбранного файла"),nl,

write("4 - Загрузить базу BSTUD из файла bstud.dat"),nl,

write("5 - Выход в основное меню"),nl,

write("=>"),

readint(C),

clearwindow,

C>0,C<=5,

load_bd(C),

clearwindow,

C = 5,!,

removewindow.


/* Процедура сохранения базы данных, стр.10 */


working(5):-

makewindow(8,62,120,"Сохранение",5,10,15,60),

sound(5,220),

repeat,

nl,nl,

write("1 - Сохранить основную базу в указанном файле"),nl,

write("2 - Сохранить основную базу в файле bit.dat"),nl,

write("3 - Сохранить базу BSTUD в указанном файле"),nl,

write("4 - Сохранить базу BSTUD в файле bstud.dat"),nl,

write("5 - Выход в основное меню"),nl,

write("=>"),

readint(I),

clearwindow,

I>0,I<=5,

save_bd(I),

clearwindow,!,

removewindow.


/* Процедура создания новой базы данных, стр.10 */


working(6):-

makewindow(10,43,120,"Создание базы данных BSTUD",6,18,8,40),

sound(5,220),

nl,

retractall(_,студент),

абитурьент(N,фио(Fam,Nam,Otch),Pol,List,оцен(E1,E2,E3)),

N=N1, Fam1=Fam, Nam1=Nam,

Otch1=Otch, List1=List, Sum=E1+E2+E3,

assertz(студент(N1,фио(Fam1,Nam1,Otch1),List,Sum)),

fail.


working(6):-

write(" База BSTUD создана."),

nl,

write(" Не забудьте сохранить ее!"),

nl,nl,

write(" Нажмите на любую клавишу"),

readchar(_),

removewindow,!.


/* Процедура выхода, стр.10 */


working(7):-!.


/* Обработка ошибки пользователя, стр.10 */


working(_):-

makewindow(16,74,79,"ОШИБКА ВВОДА",6,18,8,40),

nl,

write(" Введите число от 0 до 7,"),nl,

write(" соответствующее выбранному пункту"),nl,nl,nl,

write(" Нажмите на любую клавишу"),

sound(20,494),

sound(30,392),

readchar(_),

removewindow.


/* Процедура коррекции данных в базе, стр.10 */


correct(1):-

makewindow(4,26,48,"Изменение данных",0,0,25,80),

nl,

accept(N),

X=N,

абитурьент(X,фио(Fam,Nam,Otch),Pol,List,оцен(E1,E2,E3)),

clearwindow,nl,

write("Порядковый номер абитурьента : "),write(N),nl,

write("Фамилия : "),write(Fam),nl,

write("Имя : "),write(Nam),nl,

write("Отчество : "),write(Otch),nl,

write("Пол : "),write(Pol),nl,

write("Номер экзаменационного листа : "),write(List),nl,nl,

write("Оценки за экзамены - "),nl,nl,

write("За первый: "),write(E1),write(" "),

write("За второй: "),write(E2),write(" "),

write("За третий: "),write(E3),

nl,nl,nl,

write("Введите фамилию : "),readln(Fam1),

write("Введите имя : "),readln(Nam1),

write("Введите отчество : "),readln(Otch1),

write("Введите пол : "),readln(Pol1),

write("Введите номер экзаменационного листа: "),readln(List1),

write("Введите оценки за экзамены - "),nl,

write("За первый : "),readln(Ekz1),

write("За второй : "),readln(Ekz2),

write("За третий : "),readln(Ekz3),nl,

X1=X,

retract(абитурьент(X,фио(Fam,Nam,Otch),Pol,List,оцен(E1,E2,E3))),

skip(Fam1,Fam,Fam2),

skip(Nam1,Nam,Nam2),

skip(Otch1,Otch,Otch2),

skip(Pol1,Pol,Pol2),

skip1(List1,List,List2),

skip1(Ekz1,E1,E11),

skip1(Ekz2,E2,E22),

skip1(Ekz3,E3,E33),

assertz(абитурьент(X1,фио(Fam2,Nam2,Otch2),Pol2,List2,оцен(E11,E22,E33))),

!,

mesage,

removewindow.


/* Процедура добавления новых записей, стр.11 */


correct(2):-

makewindow(9,26,48,"Ввод новых данных",0,0,25,80),

repeat,

nl,

write("Введите порядковый номер абитурьента: "),readint(K),nl,

write("Введите фамилию : "),readln(F),nl,

write("Введите имя : "),readln(N),nl,

write("Введите отчество : "),readln(O),nl,

write("Введите пол : "),readln(P),nl,

write("Введите номер экзаменационного листа: "), readint(L),nl,

write("Введите оценки за экзамены -"),nl,nl,

write(" За первый : "),readint(E1),nl,

write(" За второй : "),readint(E2),nl,

write(" За третий : "),readint(E3),nl,

N1=K,

Fam=F,Nam=N,Otch=O,

Pol=P,List=L,

Ekz1=E1,Ekz2=E2,Ekz3=E3,

assertz(абитурьент(N1,фио(Fam,Nam,Otch),Pol,List,оцен(Ekz1,Ekz2,Ekz3))),

ask,!,

mesage,

removewindow.


correct(_).


/* Процедура просмотра базы, стр.11 */


view(1):-

makewindow(16,31,26,"Просмотp основной базы",0,0,25,80),

nl,nl,

write("╔═══════════════════════════════════════════════════════╗"),nl,

write("║

Если Вам нужна помощь с академической работой (курсовая, контрольная, диплом, реферат и т.д.), обратитесь к нашим специалистам. Более 90000 специалистов готовы Вам помочь.
Бесплатные корректировки и доработки. Бесплатная оценка стоимости работы.

Поможем написать работу на аналогичную тему

Получить выполненную работу или консультацию специалиста по вашему учебному проекту
Нужна помощь в написании работы?
Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Пишем статьи РИНЦ, ВАК, Scopus. Помогаем в публикации. Правки вносим бесплатно.

Похожие рефераты: