SML:基本Prime测试

时间:2015-08-15 19:41:43

标签: functional-programming sml

我试图编写一个基本函数来取一个整数并计算一个bool,它将检查整数是否为素数。

我使用辅助功能来跟踪我测试的当前除数,如下所示:

fun is_divisible(n : int, currentDivisor : int) =
    if currentDivisor <= n - 1 then
        n mod currentDivisor = 0 orelse is_divisible(n, currentDivisor + 1)
    else
        true;

fun is_prime(n : int) : bool =
    if n = 2 then
        true
    else
        not(is_divisible(n, 2));

它对我来说是正确的,但是我在9上测试它并且在11上测试它然后在11上也是假的。

今天对所有问题表示歉心,谢谢!

0 个答案:

没有答案