标签: prolog-lists

将二进制谓词转换为十进制谓词

convertBinToDec(B,D):- atom_number(S,B),
                       atom_length(S,L),
                       sub_atom(S, 0, 1, After,S1),
                       atom_number(S1,N),
                       L1 is L-1,
                       sub_atom(S, 1,L1, After ,S2),
                       atom_number(S2,B2),
                       convertBinToDec(B2,D1),
                       D is D1+((2*N)**L1).
convertBinToDec(0,0).
convertBinToDec(1,1).
Run Code Online (Sandbox Code Playgroud)

谓词采用 B 是整数形式的二进制数,应该返回 D 其相应的十进制形式,对不起,我对声明式编程语言还是个新手,但我不知道为什么我上面的代码总是错误,我觉得有什么问题使用基本情况 也不允许使用 prolog 库

prolog swi-prolog prolog-lists

0
推荐指数
1
解决办法
119
查看次数

标签 统计

prolog ×1

prolog-lists ×1

swi-prolog ×1