【发布时间】:2010-09-21 21:50:35
【问题描述】:
我应该编写一个方案函数(数字计数 n),它接受一个正整数 n 并计算 n 的位数为 6、4 或 9。
我无法理解我到底应该做什么,我对“n 的 6、4 或 9 的数字”感到困惑,这是什么意思?
【问题讨论】:
-
这对你的老师来说似乎是一个很好的问题。但是我认为您要删除所有不是 6、4 或 9 的数字。因此输入 61144119 的结果将是 4、6449。您应该首先将输入转换为字符串。
-
@linuxuser27 'digit-count' 这个名字并没有暗示要删除数字。这个家庭作业问题只能使用数学来完成。
-
@erjiang - 我正在通过我认为老师所要求的概念来引导 OP。数字中的数字是 6、4、9。请告诉我如何在不将 61144119 转换为字符串或方案列表的情况下执行此操作。考虑到每个解决方案都在使用这种方法。
-
@linuxuser27 我不想放弃作业问题,但是psst在Scheme中有一个叫做“商”的函数。
-
是的,我知道。但是看,这就是有趣的地方。您将问题解释为“特定数字中有多少 6 4 和 9 的倍数”。其他人都将其解释为“给定一个数字,它的十进制表示中有多少个 6 4 和 9 位”。因为数字 646 中有 2 个“6”和 1 个“4”。
标签: scheme