【发布时间】:2022-11-16 11:02:54
【问题描述】:
我有带有航班时刻表的Prolog 数据库。这是它的样子:
fly(id, from, to, days(1, 0, 1, 0, 1, 0, 1)).
如您所见,days 谓词中有 7 个值 - 从星期一到星期日。我想做的是每天打印,值是1,但只打印成文本。我试图使用 if - else 声明,但在这种情况下它不起作用:
(
A = 1 -> write(monday), nl;
(
B = 1 -> write(tuesday), nl;
(
C = 1 -> write(wednesday), nl;
(
D = 1 -> write(thursday), nl;
(
E = 1 -> write(friday), nl;
(
F = 1 -> write(saturday), nl;
(
G = 1 -> write(sunday), nl
)
)
)
)
)
)
)
例如,它应该打印 4 天:
monday
wednesday
friday
sunday
我怎样才能做到这一点?
【问题讨论】:
标签: prolog