在 SWI-Prolog 中,是否有一种简单的方法可以使用 REPL 将数字从一个基数转换为另一个基数?

2024-03-05

在使用 REPL 的 SWI-Prolog 中,可以轻松地从任何基数转换为基数 10,例如

?- X = 16'FF.
X = 255.

?- X = 2'11111111.
X = 255.

然而这失败了。 (没想到它会起作用,但显示了我的想法。)

?- 2'X = 16'FF.
ERROR: Syntax error: Operator expected
ERROR: 
ERROR: ** here **
ERROR: 2'X = 16'FF . 

在SWI-Prolog中,您可以使用r for radix in format/2 http://eu.swi-prolog.org/pldoc/doc_for?object=format/2:

Print integer in radix numeric argument notation. Thus ~16r prints its argument hexadecimal. The argument should be in the range [2, ... , 36]. Lowercase letters are used for digits above 9. The colon modifier may be used to form locale-specific digit groups.

Example:



?- format("~2r", 0xFF).
11111111
true.
  
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 SWI-Prolog 中,是否有一种简单的方法可以使用 REPL 将数字从一个基数转换为另一个基数? 的相关文章

  • 在序言中返回列表

    我想问一个关于返回列表的问题 事实 团队 团队名称 总监 国籍 总体目标 team milan allegri italy 8 5 team inter benitez italy 7 6 team barcelona guardiola
  • Prolog 中不带双精度的列表的所有组合

    有没有一种简单的方法可以获取列表的所有组合而无需双精度 没有双打我的意思是也没有彼此的排列 所以不行 a b c and c a b or c b a 因此对于输入 a b c 输出将是 a b c a b a c b c a b c 我只
  • Prolog 中的分配性检查

    假设我有一个等价关系eq 以及多个二元运算符o 1 o 2 o n 我想找出哪些操作分配给其他操作 假设我有一个可以确定两个表达式是否等价的知识库 一个简单的解决方案是输入所有可能的查询 对于左分配性 eq o 1 Z o 1 X Y o
  • Prolog:覆盖谓词和使用它之间的区别

    我觉得自己真的很愚蠢 感觉自己错过了一些东西 我基本上有两个文件 module pl通用逻辑规则 可重用 state pl一个针对当前场景 在模块文件中 module pl 我已经声明 inside Food Eater T isTime
  • Prolog 时间重叠问题

    假设我有这个知识库 free ann slot time 8 0 time 9 0 free ann slot time 10 0 time 11 0 free bob slot time 7 0 time 8 30 free bob sl
  • 编写 Prolog 谓词的最佳实践是什么,以便它以指定参数的不同方式工作

    我正在尝试实现一些简单的谓词 例如 my length 或 my append 如果我们事先知道我们想要找到列表的长度 或者我们想要附加两个列表 这对我来说很容易 即我知道什么是输入 什么是输出 在 Prolog 中 可以用其他方式做事 如
  • Prolog - 递归列表构建

    对于我正在编写的程序 我需要创建一个列表列表 其中包含代表乘积的数字对和两个给定数字的总和 现在我有一个函数 我可以指定将列表添加到列表中的次数 稍后将使用完整功能进行扩展 这是我所拥有的 s1 0 X s1 Q X N is Q 1 mu
  • Prolog 程序从列表中删除每个第 n 个元素

    您能帮我解决以下问题吗 编写三元谓词delete nth从列表中删除每个第 n 个元素 样本运行 delete nth a b c d e f 2 L L a c e false delete nth a b c d e f 1 L L f
  • 在 Prolog 中编辑 Eliza 聊天机器人

    我一直在努力尝试在 Prolog 中编辑 Eliza 聊天机器人 每次我尝试编辑某些内容时 都会出现新的错误 它是否受到任何形式的编辑保护 我使用 SWI prolog 编辑器进行编辑 问题是我试图在没有完全理解代码的情况下最小化代码 我正
  • 获取 Prolog 中的解决方案列表

    我正在学习 Prolog 并且正在阅读一本名为 人工智能 Prolog 编程 的书 作为练习 我想学习如何扩展本书中的示例之一 有人可以帮忙吗 假设您有以下事实 parent pam bob pam is a parent of bob p
  • Prolog 追加与剪切运算符

    当我们使用append和cut操作符时会出现什么问题 append2 L L append2 H T L H TL append2 T L TL 我尝试了几种不同的输入 但总是成功 append2 1 2 5 L L 1 2 5 appen
  • 关于构建列表直至满足条件

    我想解决 巨猫军团之谜 https youtu be YeMVoJKn1Tg由 Dan Finkel 使用 Prolog 编写 基本上你从 0 然后使用以下三个操作之一构建此列表 添加5 添加7 或采取sqrt 当您成功建立一个列表后 您就
  • Prolog - 删除非唯一元素

    我有一个谓词来检查元素是否是列表的成员 并且看起来如下 member X X member X T member X T 当我打电话时 member 1 2 3 1 4 我明白了 是的 现在我必须使用它来编写谓词 该谓词将从列表列表中删除所
  • Prolog 中的聊天机器人

    我一直在尝试在序言中创建一个聊天机器人 作为作业 到目前为止 我已经在 pl 文件中创建了一个数据库 并且列出了很多可能的对话 我知道序言是这样工作的 例如如果我们有 Chatbot good 然后我们输入 Chatbot good 它会回
  • 如何在 swi-prolog 的 prolog 文件中运行 prolog 查询?

    如果我有一个定义规则的 prolog 文件 并在 Windows 中的 prolog 终端中打开它 它会加载事实 然而 然后它显示 提示我手动输入一些内容 如何将代码添加到文件中 以便它实际上会评估这些特定的语句 就像我输入它们一样 像这样
  • YAP Prolog 中的正向链接?

    我需要在某些 Prolog 问题中使用前向链接器 我想避免使用普通元解释器从头开始实现它 但如果没有其他选项可用 这就是我必须要做的 因为使用元解释器执行此操作会很慢 而且我我确信应该有一些好的实现 有人知道 YAP 或 SWI Prolo
  • 如何实现 not_all_equal/1 谓词

    如何实施not all equal 1谓词 如果给定列表包含至少 2 个不同的元素 则该谓词成功 否则失败 这是我的尝试 不是很纯粹的尝试 not all equal L member H1 L member H2 L H1 H2 gt t
  • 如何在 Prolog 中为变量(如字符串)分配多个值?

    今天早些时候 我寻求帮助以在序言中构建数据库以及如何通过参数搜索 有人提出了这个 您还可以向每个处理器添加术语列表 例如 processor pentium g4400 brand intel family pentium series g
  • 转换句子会产生无限循环 - 但如何转换呢?

    我不明白这是哪里出了问题 请注意 我对 Prolog 很陌生 我确信我错过了一些东西 只是不知道那可能是什么 有人可以帮我吗 谢谢 这是我的代码 printSentence printSentence W write W write nl
  • Prolog 过滤自定义目标失败的所有元素的列表

    我正在尝试写一个谓词filter List PredName Result 过滤一个List目标的所有要素PredName失败并随后返回Result列表 谓词PredName 1应该在调用过程时定义filter 3例如可以是 test N

随机推荐

  • 在 PowerShell 7 中安装/重新启动脚本

    我有一个使用的脚本 Authentication的参数调用RestMethod https learn microsoft com en us powershell module microsoft powershell utility i
  • 使用 (wx)python 记录外部程序的输出

    我正在编写一个 GUI 用于使用 oracle exp imp 命令并通过 sqlplus 启动 sql 脚本 子进程类可以轻松启动命令 但我需要一些附加功能 我想在使用 wxPython GUI 时摆脱命令提示符 但我仍然需要一种方法来显
  • 我的 Visual Force 页面上的 Google 地图未将所有标记显示为获取的结果数

    我正在尝试开发一个显示 程序位置 的视觉力页面 在页面加载时 它会获取所有程序并使用标记显示在地图上 有一些过滤器可用于减少结果集并查看特定程序 一切正常 除了页面加载时 我的结果表位于 Google 地图 div 下方 显示 16 条记录
  • OpenID:尝试从 Google OP 获取电子邮件地址

    我正在使用 dotnetopenauth 3 2 来实现 Openid 但不知道如何让 Google 在声明响应中传递电子邮件地址 我知道 Google 不支持简单注册 但我无法确定他们支持什么 对这个问题的警告是 我刚刚开始学习 Open
  • XmlReader - 自关闭元素不会触发 EndElement 事件?

    我在 NET 中使用 XmlReader 使用循环解析 XML 文件 while xml Read switch xml NodeType case XmlNodeType Element Do something case XmlNode
  • iOS 上基于时间的 UUID(版本 1)?

    我们如何使用 iOS 创建 RFC 4122 投诉 UUID 版本 1 基于时间 这是man page https developer apple com library archive documentation System Conce
  • Woocommerce WC_Order get_shipping_address() 未作为数组返回

    从 Woocommerce 检索订单信息时 它指出它应该是一个数组 请参阅 http docs woothemes com wc apidocs class WC Order html get shipping address http d
  • 从另一个 DataFrame 填充 NaN 值(具有不同的形状)

    我正在寻找一种更快的方法来提高解决方案的性能 以解决以下问题 某个 DataFrame 有两列 其中有一些列NaN他们身上的价值观 挑战在于取代这些NaNs带有来自辅助 DataFrame 的值 下面我将分享用于实现我的方法的数据和代码 让
  • 哈希集处理以避免迭代期间陷入循环

    我正在研究图像挖掘项目 我使用 Hashset 而不是数组来避免在收集 url 时添加重复的 url 我到达了代码点以迭代包含主 url 的 Hashset 并在迭代中下载主 URL 的页面并将它们添加到哈希表中 然后继续 在迭代期间我应该
  • 数据库模式规范化检查器?

    我有兴趣了解如下操作的工具 给定一个数据库模式和一些数据 建议该模式是否可能以任何特定的范式构建 然后告诉如何分解该模式以产生进一步的规范化 基本上 是一个用于数据库模式设计的静态分析工具 与其他静态分析工具一样 这样的数据库工具不需要生成
  • Python Numpy 外积将函数列表应用于参数列表而不使用 For 循环

    我有一个数字数组和一个函数列表 我想对每个数字运行每个函数以获取矩阵 有没有一种方法可以在不使用缓慢的Python循环 映射的情况下做到这一点 import numpy arr numpy array 1 2 3 4 5 fns numpy
  • C++ 中的 Ada 子类型等效项

    C 是否提供类似于 Ada 的功能subtype缩小类型 E g type Weekday is Monday Tuesday Wednesday Thursday Friday Saturday Sunday subtype Workin
  • Xcode 7.0.1 - 无效的 Swift 支持 - 缺少 SwiftSupport 文件夹。

    我尝试在 AppStore 上发布包含 Swift 2 0 文件的应用程序 但收到以下电子邮件 亲爱的开发者 我们发现您最近的交货存在一个或多个问题 米兰情绪 要处理您的交货 必须解决以下问题 更正 无效的 Swift 支持 缺少 Swif
  • React.js - 语法错误:这是 render() 函数中的保留字

    我遇到了保留关键字 this 的错误 在下面的 React 组件中 我将状态从主组件 App js 传递到 RecipeList js 组件 然后映射数据并渲染每个 RecipeItem 组件 我只是不明白为什么会出现这个错误 React
  • gcc/g++ 输出类型

    我知道这是一个非常基本的问题 但是当我用 gcc g 编译我的 c c 代码时 在汇编器开始生成机器代码之前中间输出的类型到底是什么 是类似X86指令的东西吗 GCC的处理链如下 你的源代码 预处理的源代码 展开宏并包含 去除注释 E ii
  • iPhone Ad Hoc 分发无期限

    背景故事 我在一家开发和制造商业产品的公司工作 该产品在一个农场中可以拥有多达 100 多台专用 PC 我们每年只获得少数新客户 我们开发了一款 iPod iPhone 应用程序 可以让我们向农场发送命令并提取数据 我们的母公司非常担心将此
  • iOS 使用 UIActivityViewController 共享 CSV 文件

    我有一个共享 CSV 文件的应用程序 我还共享与内置选项 例如邮件 和外部选项 例如 Gmail 应用程序或 Evernote 完美配合的其他文件 如果我尝试共享 CSV 文件 内部邮件选项将按预期工作 但其他选项 例如 Gmail 或 E
  • 如何按类别用百分比注释计数图

    嗨 我正在尝试将百分比添加到我的countplot有 5 个类别和 2 个值 旧的和新的 我尝试添加 def 和循环如何在seaborn中的条形顶部添加百分比 https stackoverflow com questions 317494
  • React 中 Axios 调用时 API 中的 PHP-Session 发生变化

    我正在使用 PHP 编写 Api 该 Api 由 React Web 客户端调用 我使用 Axio 来调用 Api 当我向 Api 发送内容时 SessionID 不是持久的 它在每次调用后都会更改 有人有什么想法吗 简化的 PHP Api
  • 在 SWI-Prolog 中,是否有一种简单的方法可以使用 REPL 将数字从一个基数转换为另一个基数?

    在使用 REPL 的 SWI Prolog 中 可以轻松地从任何基数转换为基数 10 例如 X 16 FF X 255 X 2 11111111 X 255 然而这失败了 没想到它会起作用 但显示了我的想法 2 X 16 FF ERROR