运行后的可视序言列表和结构(错误代码327)

时间:2019-05-21 17:06:55

标签: prolog

程序正常运行,但在终端中显示错误代码327。这是我的文本文件的样子:

条款   学生(1032165446,“ Niloy Basak”,7947443837)。   学生(1032165676,“ Alam Faysal”,7944545437)。   学生(1032165789,“ Rony Roy”,7934456737)。   学生(1032165889,“ Abu Mahmad”,7947445645)。   学生(1032175986,“ Rahul Azkfer”,7978563837)。   学生(1032175635,“ Sazid Hossain”,79475674638)。   学生(1032178968,“ Atik Ibrahima”,7947447835)。   学生(1032160934,“ Remonda Perera”,79474485749)。

Group(01,“ NE-201”,2,2017)。   组(02,“ NK-101”,1,2017)。   组(03,“ NP-301”,3,2017)。

studyat(01,1032165446)。   studyat(01,1032165676)。   studyat(01,1032165789)。   studyat(02,1032165889)。   studyat(02,1032175986)。   studyat(03,1032175635)。   studyat(03,1032178968)。   studyat(03,1032160934)。

队长(01,1032165446)。   机长(02,1032175986)。   机长(03,1032160934)。

主题(01,“逻辑编程”,2)。   subject(02,“ Statistics”,2)。   subject(03,“数学分析”,1)。   subject(04,“ Algebra”,1)。

mark(01,1032165446,3)。   标记(01,1032165676,5)。   mark(04,1032165789,5)。   标记(03,1032165889,4)。   标记(04,1032175986,3)。   标记(02,1032175635,3)。   标记(02,1032178968,2)。   标记(03,1032160934,3)。

 implement main
   open core, file, stdio

domains
   scholarship = yes; no.

class facts - studdb
student : (integer Stu_num, string Name, string Telephone, scholarship X).
group : (integer Group_id, string G_name, integer Course_id, integer Course_year).
studyat : (integer Group_id, integer Stu_num).
captain : (integer Group_id, integer Stu_num).
subject : (integer Sub_id, string Sub_name, string G_name, integer Course_id).
mark : (integer Sub_id, integer Stu_num, integer Mark).

class facts
  s : (real Sum) single.

clauses
   s(0).

class predicates
   all_students : (integer Group_id) failure.
   all_captains : (integer Group_id) failure.
   scholarships : (integer Stu_num) failure.
   excellant_stu : (integer Group_id) failure.

clauses
all_students(Group_id) :-
    student(_, Name, _, _),
    group(Group_id, _, _, _),
    studyat(Group_id, _),
    write(Name, " study at", Group_id),
    nl,
    fail.

all_captains(Group_id) :-
    student(Stu_num, Name, _, _),
    group(Group_id, G_name, _, _),
    captain(Group_id, Stu_num),
    write("Name", Name, " from group ", G_name, "Captain of this group", Name),
    fail.
scholarships(Stu_num) :-
    student(Stu_num, _, _, yes),
    group(Group_id, _, _, _),
    studyat(Group_id, Stu_num),
    s(Sum),
    asserta(s(Sum + 1)),
    fail.
scholarships(Stu_num) :-
    s(Sum),
    write("There are ", Sum, " students in group", Stu_num, " have scholarship"),
    nl,
    fail.

excellant_stu(Group_id) :-
    student(Stu_num, Name, _, _),
    group(Group_id, _, _, _),
    mark(_, Stu_num, 5),
    write("excellent student is ", Name),
    nl,
    fail.

run() :-
    console::init(),
    reconsult("..\\students.txt", studdb),
    all_students(1).
run() :-
    all_captains(1).
run() :-
    scholarships(1).
run() :-
    excellant_stu(1).
run() :-
    succeed.

end implement main

goal
    console::run(main::run).

0 个答案:

没有答案