问题标签 [visual-prolog]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
617 浏览

prolog - 视觉序言 C150

怎么了 ?我尝试构建 prolog 程序,但编译器抛出错误号 c150 。怎么修

0 投票
2 回答
2830 浏览

visual-prolog - (Facts and Predicates) && (Single and Determ) 之间的区别

我只是想知道,序言中的“事实”和“谓词”部分有什么区别?

“single”和“determ”关键字有什么区别?

0 投票
0 回答
842 浏览

prolog - Visual Prolog Flow 模式不存在

我正在编写一个猜测动物的专家系统。这是讲师提供的示例。我使用视觉序言,但我收到编译错误,我无法理解。你可以帮帮我吗?

我收到以下错误:

第一个错误是:

0 投票
0 回答
62 浏览

visual-prolog - Visual Prolog 5:未绑定的变量

代码如下:

我使用 Visual Prolog 5。这段代码可以编译,但编译器说有未绑定的变量:_ 行中的变量:

以及在地理原子之前的第二个 _ 变量:

是否有可能使此代码工作?

0 投票
1 回答
455 浏览

prolog - Visual Prolog 错误 c502:表达式不产生值

我正在尝试将一个简单的 Turbo Prolog 问题转换为 Visual Prolog 7.1

原始的 Turbo Prolog 代码如下。

并且它的结果列表被输出,solve(Out)并为 Turbo Prolog 控制台提供了正确的结果。

尝试将其转换为 Visual Prolog 时,我在第 33 行收到错误 c502。

我从这个错误中得到的是solve(Out)它没有提供任何打印内容。我不知道如何更改代码以生成要打印的内容。

我是 Prolog 的初学者,我不知道如何解决这个问题,谷歌也没有多大帮助,这似乎是一个非常模糊的问题。

谢谢!

0 投票
1 回答
292 浏览

visual-prolog - Visual Prolog:编辑控件:检查字符串是否包含数字

我们使用下面的示例来验证编辑控件只包含数字。

是否有示例验证字符串是否仅包含字母和消息用户是否包含数字?

0 投票
1 回答
256 浏览

prolog - Prolog 类型不兼容

Visual Prolog 8 抛出错误 c504:表达式具有类型 '() -> ::char 过程',它与类型 '::char' 不兼容。

主程序

如何解决?

0 投票
1 回答
1075 浏览

prolog - 从事实中提取价值

我对序言很陌生,但被卡住了。我需要在计算过程中存储一个带有一些字符串的变量,我决定通过在我正在使用的类中添加一个“单一事实”来做到这一点。一切正常,正在存储字符串,但是当我稍后尝试添加代码以访问它时,编译器返回一个错误,"The expression has type 'dataBL::dataBL@objectDB', which is incompatible with the type '::symbol'".
我认为这不是存储变量的有效方式,所以,谁能帮我解决这个问题?我尝试在网上搜索答案,但一无所获。

我试图访问这样的事实:

0 投票
1 回答
249 浏览

visual-prolog - 如何获取带有 ID 的菜单项的文本

我有一个旧的视觉序言项目,我必须在运行时更改菜单的文本。
这是我为更改文本所做的:

这很好用,但是,当我想启用/禁用此菜单时,以下内容不起作用(意味着菜单项不会更改其状态):

经过一番搜索,我发现:

在 MS-Windows 下,资源标识符不能引用子菜单。如果子菜单的菜单条目需要启用、禁用、检查或更改文本。有必要使用menu_Enablemenu_Checkmenu_SetText谓词的特殊版本,它们指定菜单条目的文本而不是常量。
menu_Enable(WinHandle, String, BOOLEAN)
menu_Check(WinHandle, String, BOOLEAN)
menu_SetText(WinHandle, String, NewString)

奇怪的是,在我的情况下,与需要文本本身menu_setText的常量一起工作得很好。menu_Enable(是的,我menu_Enable使用菜单项的初始文本进行了测试,但是当文本更改时,一切都会中断)

我的问题来了:

当我知道菜单的 ID 但不知道其名称时,如何启用/禁用菜单?
如果不可能直接,当我知道菜单的 ID 时,如何获取菜单的当前名称?

万一这有帮助,这个项目是用 VIP52 打开和编译的(从 2001 年开始)。

0 投票
1 回答
469 浏览

prolog - 如何转换 Visual Prolog 8 中的值类型?

我需要将字符串转换为 ACII 加 1 并转换回来。

但是错误:

main.pro(19,48) 错误 c504:表达式的类型为“main::letter”,与“::integer”类型不兼容

完整程序: