小编car*_*rla的帖子

确定数字是否为素数

我已经在这个主题上仔细阅读了很多代码,但是大多数代码都生成了一直到输入数字为止的数字.但是,我需要的代码只检查给定的输入数是否为素数.

这是我能够写的,但它不起作用:

void primenumber(int number)
{
    if(number%2!=0)
      cout<<"Number is prime:"<<endl;
    else 
      cout<<"number is NOt prime"<<endl;
}
Run Code Online (Sandbox Code Playgroud)

如果有人能就如何正确地开展这项工作给我建议,我将不胜感激.

更新

我修改它来检查for循环中的所有数字.

void primenumber(int number)
{
    for(int i=1; i<number; i++)
    {
       if(number%i!=0)
          cout<<"Number is prime:"<<endl;
       else 
          cout<<"number is NOt prime"<<endl;
    }  
}
Run Code Online (Sandbox Code Playgroud)

c++ algorithm primes

10
推荐指数
5
解决办法
10万
查看次数

决定一个数字是完美的还是素数

问题是:"写一个函数来找出一个数字是一个素数还是一个完整的数字."

到目前为止,我已经完成了最完美的部分,这就是我所拥有的:

#include <iostream>
using namespace std;
bool perfectNumber(int);
int main()
{
 int number;

 cout<<"Please enter number:\n";
 cin>>number;
 bool perfectNumber(number);

 return 0;
}
bool perfectNumber(int number)
{
 int i;

 int sum=0;
 for(i=1;i<=number/2;i++)
 {
  if(number%i==0)
  {
   sum+=i;
  }
 }
 if (sum==number)
  return i;
 else
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

但是,这段代码似乎有错误.我查看了这本书,但没有谈论这个话题.我想获得有关如何修复此代码的建议.

谢谢!

c++ primes numbers modulus perfect-numbers

2
推荐指数
1
解决办法
2779
查看次数

标签 统计

c++ ×2

primes ×2

algorithm ×1

modulus ×1

numbers ×1

perfect-numbers ×1