Главная » Каталог    
рефераты Разделы рефераты
рефераты
рефератыГлавная

рефератыБиология

рефератыБухгалтерский учет и аудит

рефератыВоенная кафедра

рефератыГеография

рефератыГеология

рефератыГрафология

рефератыДеньги и кредит

рефератыЕстествознание

рефератыЗоология

рефератыИнвестиции

рефератыИностранные языки

рефератыИскусство

рефератыИстория

рефератыКартография

рефератыКомпьютерные сети

рефератыКомпьютеры ЭВМ

рефератыКосметология

рефератыКультурология

рефератыЛитература

рефератыМаркетинг

рефератыМатематика

рефератыМашиностроение

рефератыМедицина

рефератыМенеджмент

рефератыМузыка

рефератыНаука и техника

рефератыПедагогика

рефератыПраво

рефератыПромышленность производство

рефератыРадиоэлектроника

рефератыРеклама

рефератыРефераты по геологии

рефератыМедицинские наукам

рефератыУправление

рефератыФизика

рефератыФилософия

рефератыФинансы

рефератыФотография

рефератыХимия

рефератыЭкономика

рефераты
рефераты Информация рефераты
рефераты
рефераты

Разработка информационно справочной системы


domains
Str=string
Int=integer
ФИО=фиЃEStr,Str,Str)
ОЦЕН=ъGен(Int,Int,Int)
database - студенЃE студенЃEInt,ФИО,Int,Int),
database - абитурЃEыQ абитурЃEыQ(Int,ФИО,Str,Int,ОЦЕН)
predicates
begin
main_menu
autoload
accept(Int)
acp(Int,Int)
working(Int)
correct(Int)
view(Int)
skip(Str,Str,Str)
skip1(Str,Int,Int)
ask
mesage
error
io_error ok
save_bd(Int)
load_bd(Int)
repeat
goal
begin.
clauses
/* ОсньAъья ЃEъGедурЃE*/
begin:-
makewindow(1,26,94,"СПИСОК АБИТУРЬЕНТОВ",0,0,25,80),
clearwindow,
autoload,
main_menu.
/* ГЃEвньD ЃEЃE */
main_menu:-
repeat,
cursor(7,0),
write("
0 - О системЃE..
"),nl,
write("
1 - КъAреЃEирьAЃE даыLых"),nl, write("
2 - УыGчтьEение заЃEсеЃE),nl,
write("
3 - ПросмъCЃEбазы"),nl,
write("
4 - ЗагрузкЃEбазы"),nl,
write("
5 - СъFраыDыGЃEбазы"),nl,
write("
6 - СьFдаыGЃEыMвоЃEбазы"),nl,
write("
7 - ВыхьC из ЃEьBраЃEЃE),nl,
write("
=>"),
readint(C),
clearwindow,
working(C),
clearwindow,
C = 7,
retractall(_),
removewindow.
/* Процедура автоЃEтическьH загрузЃE базы даыLых */
autoload:-
retractall(_,абитурЃEыQ),
existfile("bit.dat"),
consult("bit.dat",абитурЃEыQ), cursor(21,30),
write("*БазЃEзагруженЃE").
autoload:-
makewindow(2,74,79,"ОШИБКА",6,18,8,40),
cursor(2,10),
write("Нет базы ъь дискЃE),
sound(70,294),
removewindow,
!.
/* ВывьC даыLых ЃEсоздателЃEЃEьBраЃEЃE*/
working(0):-
makewindow(3,27,30,"О системЃE..",0,0,25,80),
nl,nl,
write("
ИыSыЌЃEциЃEыM-спpавъHъья системЃE),
nl,nl,
write("
СЃEсоЃEабитурЃEыQьA "), nl,nl,nl,nl,
write("
ПрограмЃE составЃEъь ЃEсредЃE "),
nl,
write("
TURBO-PROLOG v.2.0."),
nl,nl,nl,
write("
автоp: ДанчеыIьA А.В."),
nl,nl,
write("
МГИРЭА, гp.ИИ-1-95 (ЃE 1996 ЃE "),
nl,
sound(5,220),
cursor(22,26),
write("НажЃEте ъь ЃEбую ЃEавишЃE),
readchar(_),
removewindow,!.
/* Процедура вывода ЃEЃE ЃEрректировкЃEдаыLых */
working(1):-
makewindow(4,26,48,"КыЌpектировкЃEдаыLых",0,0,25,80),
sound(5,220),
repeat,
nl,
nl,
cursor(9,0),
write("
1 - Изменение даыLых"),nl,
write("
2 - Дь@авЃEыGЃEдаыLых"),nl,
write("
3 - ВыхьC ЃEглавыMЃEЃEЃE" ),nl,
write("
=>"),
readint(X),
clearwindow,
X>0,X<=3,
correct(X),
clearwindow,
X=3,!,
removewindow.
/* Процедура уничтожеыGя даыLых */
working(2):-
makewindow(5,48,107,"УыGчтьEение заЃEсеЃE,0,0,25,80),
sound(5,220),
nl,
accept(N),
X=N, абитурЃEыQ(X,фиЃEFm,Nm,Ot),Pl,Ls,ъGен(E1,E2,E3)),
retract(абитурЃEыQ(X,фиЃEFm,Nm,Ot),Pl,Ls,ъGен(E1,E2,E3))),
ok,
!,
removewindow.
working(2):- error,
removewindow,!.
/* Процедура вывода ЃEЃE ЃEъBЃEтрЃE базы даыLых */
working(3):-
makewindow(6,30,26,"ПросмъCp базы",0,0,25,80),
sound(5,220),
repeat,
nl,
nl,
cursor(10,0),
write("
1 - ПросмъCЃEъBыMвньH базы"),nl,
write("
2 - ПросмъCЃEбазы BSTUD"),nl,
write("
3 - ВыхьC ЃEглавыMЃEЃEЃE" ),nl,
write("
=>"),
readint(X),
clearwindow,
X>0,X<=3,
view(X),
clearwindow,
X=3,!,
removewindow.
/* Процедура загрузЃE
базы даыLых */
working(4):-
makewindow(7,62,120,"ЗагрузкЃE,5,10,15,60),
sound(5,220),
repeat,
nl,nl,
write(" 1 - Загрузить ъBыMвнЃE базу из выбраныMго файлЃE),nl,
write(" 2 - Загрузить ъBыMвнЃE базу из файлЃEbit.dat"),nl,
write(" 3 - Загрузить базу BSTUD из выбраныMго файлЃE),nl,
write(" 4 - Загрузить базу BSTUD из файлЃEbstud.dat"),nl,
write(" 5 - ВыхьC ЃEъBыMвньD ЃEЃE"),nl,
write(" =>"),
readint(C),
clearwindow,
C>0,C<=5,
load_bd(C), clearwindow,
C = 5,!,
removewindow.
/* Процедура сохраненЃE базы даыLых */
working(5):-
makewindow(8,62,120,"СъFраыDыGЃE,5,10,15,60),
sound(5,220),
repeat,
nl,nl, write(" 1 - СъFраыGть ъBыMвнЃE базу ЃEуказаныMЃEфайлЃE),nl,
write(" 2 - СъFраыGть ъBыMвнЃE базу ЃEфайлЃEbit.dat"),nl,
write(" 3 - СъFраыGть базу BSTUD ЃEуказаныMЃEфайлЃE),nl,
write(" 4 - СъFраыGть базу BSTUD ЃEфайлЃEbstud.dat"),nl,
write(" 5 - ВыхьC ЃEъBыMвньD ЃEЃE"),nl,
write(" =>"),
readint(I),
clearwindow,
I>0,I<=5,
save_bd(I),
clearwindow,!,
removewindow.
/* Процедура созданЃE ыMвоЃEбазы даыLых */
working(6):- makewindow(10,43,120,"СьFдаыGЃEбазы даыLых BSTUD",6,18,8,40),
sound(5,220),
nl,
retractall(_,студенЃE, абитурЃEыQ(N,фиЃEFam,Nam,Otch),Pol,List,ъGен(E1,E2,E3)),
N=N1, Fam1=Fam, Nam1=Nam,
Otch1=Otch, List1=List, Sum=E1+E2+E3,
assertz(студенЃEN1,фиЃEFam1,Nam1,Otch1),List,Sum)),
fail.
working(6):-
write(" БазЃEBSTUD созданЃE"),
nl,
write(" НЃEзабудьте сохранитЃEее!"),
nl,nl,
write(" НажЃEте ъь ЃEбую
ЃEавишЃE),
readchar(_),
removewindow,!.
working(7):-!.
working(_):-
makewindow(16,74,79,"ОШИБКА ВВОДА",6,18,8,40),
nl,
write(" Введите числЃEъC
0 до 7,"),nl,
write(" соъCветствЃEщеЃEвыбраныMЃE
ЃEыIту"),nl,nl,nl,
write(" НажЃEте ъь ЃEбую
ЃEавишЃE),
sound(20,494),
sound(30,392),
readchar(_),
removewindow.
/* Процедура ЃEррекциЃEдаыLых ЃEбазе */
correct(1):-
makewindow(4,26,48,"Изменение даыLых",0,0,25,80),
nl,
accept(N),
X=N, абитурЃEыQ(X,фиЃEFam,Nam,Otch),Pol,List,ъGен(E1,E2,E3)),
clearwindow,nl,
write(" ПъAядкьAый
ыMЃEЃEабитурЃEыQЃE: "),write(N),nl,
write(" ФамилЃE
: "),write(Fam),nl,
write(" ИЃE
: "),write(Nam),nl,
write(" ОтчествЃE
: "),write(Otch),nl,
write(" ПьJ
: "),write(Pol),nl,
write(" НьKер
эЃEаменациоыLьBЃEЃEстЃE: "),write(List),nl,nl,
write(" ОцеыIЃEза
эЃEаменЃE -
"),nl,nl,
write(" ЗЃEЃEрвый: "),write(E1),write(" "),
write(" ЗЃEвтъAьH:
"),write(E2),write(" "),
write(" ЗЃEтретий: "),write(E3),
nl,nl,nl,
write(" Введите
фаЃEЃEю
: "),readln(Fam1),
write(" Введите
имя
: "),readln(Nam1),
write(" Введите
ъCчество
: "),readln(Otch1),
write(" Введите
ЃEЃE
: "),readln(Pol1),
write(" Введите
ыMЃEЃEэЃEаменациоыLьBЃEЃEстЃE "),readln(List1),
write(" Введите
ъGенЃE за эЃEаменЃE - "),nl, write(" ЗЃEЃEрвый
: "),readln(Ekz1),
write(" ЗЃEвтъAьH
: "),readln(Ekz2),
write(" ЗЃEтретий
: "),readln(Ekz3),nl,
X1=X,
retract(абитурЃEыQ(X,фиЃEFam,Nam,Otch),Pol,List,ъGен(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(абитурЃEыQ(X1,фиЃEFam2,Nam2,Otch2),Pol2,List2,ъGен(E11,E22,E33))),
!,
mesage,
removewindow.
correct(2):-
makewindow(9,26,48,"ВвоЃEыMвыЃEдаыLых",0,0,25,80),
repeat,
nl,
write(" Введите
ЃEЃEдкьAый ыMЃEЃEабитурЃEыQЃE :
"),readint(K),nl,
write(" Введите
фаЃEЃEю
: "),readln(F),nl,
write(" Введите
имя
: "),readln(N),nl,
write(" Введите
ъCчество
: "),readln(O),nl,
write(" Введите
ЃEЃE
: "),readln(P),nl,
write(" Введите
ыMЃEЃEэЃEаменациоыLьBЃEЃEстЃE : "),
readint(L),nl,
write(" Введите
ъGенЃE за эЃEаменЃE -"),nl,nl,
write(" ЗЃEЃEрвый
: "),readint(E1),nl,
write(" ЗЃEвтъAьH
: "),readint(E2),nl,
write(" ЗЃEтретий
: "),readint(E3),nl, N1=K,
Fam=F,Nam=N,Otch=O,
Pol=P,List=L,
Ekz1=E1,Ekz2=E2,Ekz3=E3,
assertz(абитурЃEыQ(N1,фиЃEFam,Nam,Otch),Pol,List,ъGен(Ekz1,Ekz2,Ekz3))),
ask,!,
mesage,
removewindow. correct(_).
/* Процедура ЃEъBЃEтрЃEбазы */
view(1):-
makewindow(16,31,26,"ПросмъCp ъBыMвньH базы",0,0,25,80),
nl,nl,
write("ЙННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННННН»"),nl,
write("є
СПИСОК
АБИТУРЬЕНТОВ
"),nl,
write("МННННЛНННННННННННННННННННННННННННННННННННННЛНННННЛНННННЛНННННННННННННННННННН№"),nl,
write("є є
ФИО
No є ъGенЃE за эЃEаменЃEє"),nl,
write("є No МННННННННННННЛНННННННННННЛНННННННННННН№
ПьJ є эЃE.МННННННЛННННННЛНННННН№"),nl,
write("є є ФамилЃE є ИЃE є ОтчествЃE є єЃEстає
1 эЃEє 2 эЃEє 3 эЃEє"),nl,
write("МННННОННННННННННННОНННННННННННОННННННННННННОНННННОНННННОННННННОННННННОНННННН№"),nl, абитурЃEыQ(N,фиЃEFam,Nam,Otch),Pol,List,ъGен(E1,E2,E3)),
cursor(Z,_),
cursor(Z,2),write(N),
cursor(Z,5),write("є",Fam),
cursor(Z,18),write("є",Nam),
cursor(Z,30),write("є",Otch),
cursor(Z,43),write("є ",Pol),
cursor(Z,49),write("є ",List),
cursor(Z,55),write("є ",E1),
cursor(Z,62),write("є ",E2),
cursor(Z,69),write("є ",E3),
cursor(Z,0),write("є"),
cursor(Z,76),write("є"),
nl,
fail.
view(1):-
write("ИННННКННННННННННННКНННННННННННКННННННННННННКНННННКНННННКННННННКННННННКННННННј"),
nl,
cursor(22,26),
write("НажЃEте ъь ЃEбую ЃEавишЃE),
readchar(_),
removewindow.
view(2):-
nl,
makewindow(13,31,26,"ПросмъCЃEыMвоЃEбазы даыLых",0,0,25,80),
write(" ЙНННННННННННННННННННННННННННННННННННННННННННННННННННННННН»"),nl,
write(" є
СПИСОК СТУДЕНТОВ
"),nl,
write(" МННННЛНННННННННННННННННННННННННННННННННННННЛНННННЛННННННН№"),nl,
write(" є є
ФИО
No є суЃEЃEє"),nl,
write(" є
No МННННННННННННЛНННННННННННЛНННННННННННН№ эЃE.є баЃEЃEє"),nl,
write(" є є ФамилЃE є ИЃE є ОтчествЃE єЃEстає є"),nl,
write(" МННННОННННННННННННОНННННННННННОННННННННННННОНННННОННННННН№"),nl, студенЃEN,фиЃEFam,Nam,Otch),List,Sum),
cursor(Z,_),
cursor(Z,11),write(N),
cursor(Z,14),write("є",Fam),
cursor(Z,27),write("є",Nam),
cursor(Z,39),write("є",Otch),
cursor(Z,52),write("є ",List),
cursor(Z,58),write("є ",Sum),
cursor(Z,9),write("є"),
cursor(Z,66),write("є"),
nl,
fail.
view(2):-
write(" ИННННКННННННННННННКНННННННННННКННННННННННННКНННННКНННННННј"),
nl,
cursor(22,26), write("НажЃEте ъь ЃEбую ЃEавишЃE),
readchar(_),
removewindow.
view(_).
/* ВспьKагателЃEЃE ЃEъGедурЃEЃEЃEъGедурЃEcorrect(1) ЃEworking(2)
*/
accept(N):-
nl,
cursor(10,0),
write(" 1
- известен ыMЃEЃEабитурЃEыQЃE),nl,
write("
2 - известъь
фаЃEЃEя"),nl,
write("
=>"),
readint(X),
acp(X,N).
acp(1,N):-
nl,
write("
Введите ыMЃEЃEабитурЃEыQЃE "),nl,
write("
>"),
readint(N), абитурЃEыQ(P,_,_,_,_),
P=N.
acp(1,N):-
N=0.
acp(2,N):-
nl,
write(" Введите фаЃEЃEю абитурЃEыQЃE "),nl,
write("
>"),
readln(L), абитурЃEыQ(Y,фиЃEL,_,_),_,_,_),
N=Y.
acp(2,N):-
N=0.
/* ВспьKагателЃEЃE ЃEъGедурЃEЃEcorrect(1) */ skip("",Fam,Fam2):-
Fam2=Fam,
!.
skip(Fam1,_,Fam2):-
Fam2=Fam1,
!.
skip1("",Fam,Fam2):-
Fam2=Fam,
!.
skip1(Fam1,_,Fam2):-
str_int(Fam1,Fam3),
Fam2=Fam3,
!.
/* Процедура чтенЃE ЃEдискЃE*/
load_bd(1):-
retractall(_,абитурЃEыQ),nl,nl,
write(" Введите
имя файлЃE:"),
readln(N),
existfile(N),
consult(N,абитурЃEыQ), ok,
!.
load_bd(1):-
io_error,
!.
load_bd(2):-
retractall(_,абитурЃEыQ),
existfile("bit.dat"),
consult("bit.dat",абитурЃEыQ),
ok,
!.
load_bd(2):-
io_error,
!.
load_bd(3):-
retractall(_,студенЃE,nl,nl,
write(" Введите
имя файлЃE:"),
readln(N),
existfile(N),
consult(N,студенЃE,
ok, !.
load_bd(3):-
io_error,
!.
load_bd(4):-
retractall(_,студенЃE,
existfile("bstud.dat"),
consult("bstud.dat",студенЃE,
ok,
!.
load_bd(4):-
io_error,
!.
load_bd(_).
/* Процедура заЃEси ъь диск */
save_bd(1):-
nl,nl,
write(" Введите
имя файлЃE: "),
readln(N),
save(N,абитурЃEыQ),nl,
ok, !.
save_bd(1):-
error.
save_bd(2):-
save("bit.dat",абитурЃEыQ),
ok,
!.
save_bd(2):-
error.
save_bd(3):-
nl,nl,
write(" Введите
имя файлЃE: "),
readln(N),
save(N,студенЃE,nl,
ok,
!.
save_bd(3):-
error.
save_bd(4):-
save("bstud.dat",студенЃE,
ok,
!.
save_bd(4):- error.
save_bd(_).
/* Процедура заЃEъBЃEъь ьIЃEчаыGЃEввьCЃEЃEcorrect(2) */ ask:-
makewindow(10,43,120,"Въ@роЃE,6,18,8,40),nl,nl,
write(" ПродоЃEитЃEЃEъGесЃEввьCЃEдаыLых?
"),nl,nl,
write("
[Д]ЃE[Н]ет"),
readchar(Ch),
removewindow,
clearwindow,
Ch='Н',!.
/* ВывьC ЃEедупрежденЃE ЃEыDь@ходиЃEстЃEсохраненЃE даыLых */ mesage:-
makewindow(17,74,79,"ПредуЃEеждеыGЃE,6,18,8,40),nl,
write(" НЃEзабудьте сохранитЃE"),nl, write(" вньAЃEвведеные даыLые!"),nl,nl,
write(" НажЃEте ъь ЃEбую ЃEавишЃE),
readchar(Ch),
removewindow.
/* Процедуры вывода соь@щеыGя ь@ ъIибЃE */
error:-
makewindow(15,74,79,"ОШИБКА",6,18,8,40),
cursor(2,16),
write("ОШИБКА"),nl,nl,
write(" НажЃEте ъь ЃEбую
ЃEавишЃE),
sound(70,294),
readchar(_),
removewindow,
!.
io_error:-
makewindow(16,74,79,"ОШИБКА",6,18,8,40),
cursor(2,7),
write("ДаныMго файлЃEыDЃEъь дискЃE),nl,nl,
write(" НажЃEте ъь ЃEбую
ЃEавишЃE),
sound(70,294),
readchar(_),
removewindow.
/* Процедура вывода соь@щеыGя ь@ усЃEшньK завершении даыLьH ъ@ерации */ ok:-
makewindow(17,27,90,"ОК",6,18,8,40),
cursor(2,7),
write(" ОПЕРАЦИЯ ВЫПОЛНЕНА"),nl,nl,
write(" НажЃEте ъь ЃEбую
ЃEавишЃE),
readchar(_),
removewindow.
/* Процедура repeat */
repeat.
repeat:- repeat.
абитурьент(1,фио("ИВАНОВ","СИДОР","ГРИГОРЬЕВИЧ"),"М",7,оцен(5,5,3))
абитурьент(2,фио("ПЕТРОВ","ПЕТР","ВЛАДИМИРОВИЧ"),"М",8,оцен(4,5,4))
абитурьент(3,фио("ЛИСЕНКОВА","ВАРВАРА","ПЕТРОВНА"),"Ж",45,оцен(4,3,3))
абитурьент(4,фио("СИДОРОВ","ПЕТР","ПЕТРОВИЧ"),"М",11,оцен(5,4,5))
абитурьент(5,фио("КУЗНЕЦОВ","ПАВЕЛ","СЕРГЕЕВИЧ"),"М",17,оцен(3,4,5))
абитурьент(6,фио("ГРИШКИНА","ЮЛИЯ","ПЕТРОВНА"),"Ж",5,оцен(4,3,5))
абитурьент(7,фио("МАЗИКИНА","МАРИНА","ЮРЬЕВНА"),"Ж",27,оцен(4,5,5))
студент(1,фио("ИВАНОВ","СИДОР","ГРИГОРЬЕВИЧ"),7,13)
студент(2,фио("ПЕТРОВ","ПЕТР","ВЛАДИМИРОВИЧ"),8,13)
студент(3,фио("ЛИСЕНКОВА","ВАРВАРА","ПЕТРОВНА"),45,10)
студент(4,фио("СИДОРОВ","ПЕТР","ПЕТРОВИЧ"),11,14)
студент(5,фио("КУЗНЕЦОВ","ПАВЕЛ","СЕРГЕЕВИЧ"),17,12)
студент(6,фио("ГРИШКИНА","ЮЛИЯ","ПЕТРОВНА"),5,12)
студент(7,фио("МАЗИКИНА","МАРИНА","ЮРЬЕВНА"),27,14)
рефераты Рекомендуем рефератырефераты

     
Рефераты @2011