如何编写一个lisp程序,将给定的十六进制数转换为十进制数。有人能给我一个线索吗? 谢谢
答案 0 :(得分:1)
我假设它有一个家庭作业问题,所以我会给你一个正确方向的暗示。
以下是如何将十进制转换为二进制 - >
让我们假设你从二进制的数字9开始,它的1001。 将9除以2开始。余数为4,保留余数。 现在再将4除以2,得到2,余数为0.保存余数。 再将2除以2,得到1,余数为0.保存余数。 除以1乘2,最后用reaminder得到0 1.保存余数。
如果您向后阅读保存的剩余物,则会获得1001!您一直在寻找的二进制数。最好把剩余的东西推到堆叠上并将它们弹出,这样它们就会向后退出。
答案 1 :(得分:0)
它已经由Common Lisp提供。
输入是十六进制整数的字符串。
然后用基数16
结果是数字
如果您将带有基数10的数字写入输出流,那么您可以将该数字作为基数10中的字符串