【发布时间】:2012-05-11 21:16:39
【问题描述】:
我正在尝试创建一个布尔递归函数,它只接受 1 个参数并且不充当另一个函数的包装器,它检查一个数字是否包含一对都是素数的组合。
例如,8379 的可能组合是:
8 379
83 79
837 9
我已经设法使用包装函数创建了该函数,但如果没有包装我似乎无法做到这一点。
我目前拥有的是:
func(num):
num is prime -> return true
else -> call func(num / 10, num % 10).
fun(num1, num2):
num1 and num2 are primes -> return true
num1 < 10 -> return false
return func(num1 / 10, concat(num1 % 10, num2))
【问题讨论】:
-
包装器 = 包装器函数。是的,这是家庭作业。我不是在寻找代码,只是在寻找通用算法。
-
如果您向我们展示您已经拥有的代码,或者至少是等效的伪代码(以保持简短),可能会有所帮助。
-
您是否尝试过简单地将函数代码复制到“包装函数”中?如果这是要求...
-
嗯,函数必须只接受 1 个参数,而我的解决方案使用 2 个参数。我似乎无法找到一种仅使用 1 个参数使其工作的方法。
-
如果数字本身是素数,该函数也应该返回
true? (不是一对数字)