如果数字是素数,则返回数字字符串

时间:2021-06-14 18:46:24

标签: javascript

我正在编写一个函数,它检查从 1 到 n 的数字,如果数字是偶数,则显示 bip,如果它是 5 的倍数,则显示 bopbipBop 如果它既是 5 的奇数又是 5 的倍数。

我试图做的,但没有成功,是检查素数并在字符串上连接 素数。即:n(11) Bip, Prime, BipPrime, 4, BipBopPrime, 6, BipPrime, 8, Bip, Bop, BipPrime。但它似乎不起作用。这是我到目前为止所拥有的:

function bipBop(n) {
    
    var numbers = '';
    for (var i = 1; i < n; i++) {
       if (i % 5 === 0 && i % 2 === 1)
            numbers += 'BipBop, ';
       else if (i % 10 === 0)
            numbers += 'Bop, ';
       else if (i % 2 === 1)
            numbers += 'Bip, ';
        else if (numbers % i === 0)
           numbers += 'Prime, '
       else
            numbers += i + ', ';
    }
    console.log(numbers);
}

1 个答案:

答案 0 :(得分:0)

因为您使用的是 else,所以如果有问题的数字与前面的任何条件匹配(例如,如果它是奇数),素数块将永远不会执行。 (没关系,numbers % i 不是素数测试,而 numbers 是字符串等)

相关问题