如何在不使用模数(%)的情况下打印素数?

时间:2014-06-11 15:14:57

标签: c

如何在不使用模数(%)的情况下打印素数?我尝试制作一个素数数组并检查余数是否等于1.但后来我意识到这是不可能的:

int main()
{
    for (int i = 2; i < num; i++)
    {
        if (num % i == 0) // without using % I am suppposed find prime no
            c++;
    }
    if (c == 0)
        printf("prime");
    else
        printf("not prime");
}

3 个答案:

答案 0 :(得分:2)

a - (n * (a/n))相当于a % n

答案 1 :(得分:2)

int main()
{
 for(int i=2;i<num;i++)
 {
  if((num-(num/i)*i)==0) // without using %
   c++;
 }
 if(c==0)
  printf("prime");
 else
  printf("not prime");
}

这应该有用。

答案 2 :(得分:-1)

const weather = weatherData(someData)
const weather2 = weatherData.setValue('temperature', 23)