printing - 在 Lisp 的同一行的一个打印语句中打印带有从函数返回的数字的文本
问题描述
我有一个非常简单的问题。如何将一段文本和一个从函数返回的整数值打印在同一行上?我正在使用一种叫做 Lisp 的语言
(defun factorial (n)
(if (= n 0)
1
(* n (factorial (- n 1)))))
(print "Factorial ( 7 ) is ")
(print (factorial 7))
此代码打印
"Factorial ( 7 ) is "
5040
我怎样才能让它们都打印在同一行?
解决方案
使用princ
代替print
or,更好的是,format
:
(format t "Factorial ( ~:D ) = ~:D~%" 7 (factorial 7))
印刷
Factorial ( 7 ) = 5,040
推荐阅读
- python - `math.floor(1 - (1 / (float("inf"))))` 不返回 0
- sql - 按周显示的滚动尾随 30 天窗口中的唯一客户总数
- css - 在 css-loader 中修改 localIdentName 在 webpack 5 react 17 中不起作用
- python - 如何使用漂亮的汤浏览雅虎财经页面?
- python - FileNotFoundError 在 Python 中写入 Azure DFS
- javascript - 在 Node.js 中对类数组进行排序
- grep - 我怎样才能让 grep 显示一条忽略我想要的单词的行?
- c# - 打开文件时出现 UWP C# 和 Windows 运行时组件 C++ 权限被拒绝错误
- angular - 在运行角度项目时,将错误填充到我在下面正确提到的终端中
- css - 如何始终连续显示 3 张卡片