Déterminer si un nombre est premier

J'ai lu beaucoup de code sur ce sujet, mais la plupart d'entre eux produisent les numéros qui sont le premier tout le chemin jusqu'à le nombre d'entrée. Cependant, j'ai besoin de code qui vérifie uniquement si la donnée d'entrée nombre est premier.

Voici ce que j'ai pu écrire, mais il ne fonctionne pas:

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

Je vous serais reconnaissant si quelqu'un pouvait me donner des conseils sur la façon de faire ce travail correctement.

Mise à jour

Je l'ai modifié pour vérifier tous les numéros dans une boucle 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;
    }  
}
Tout votre code n'est à signaler si le nombre est divisible par 2. Ce que l'approche générale de l'utiliser pour détecter les nombres premiers? Commençons par cela, et de l'artisanat dans le code de l'exécutable.
Avez-vous pensé à ce que cela signifie pour un nombre premier? L'écrire en pseudo-code, puis de le transformer en véritable code.
double possible de de décider si un nombre est parfait ou premier

OriginalL'auteur carla | 2010-12-12