Die Suche nach einer Primzahl

Ich habe Probleme mit einer Aufgabe. Ich muss Sie finden und warnen den Benutzer, wenn die Zahl eine Primzahl ist oder nicht.

Hier ist mein code:

int a = Convert.ToInt32(number);

if (a % 2 !=0 )
{
    for (int i = 2; i <= a; i++)
    {
        if (a % i == 0)
        {
            Console.WriteLine("not prime");
        }
        else
        {
            Console.WriteLine("prime");
        }
        Console.WriteLine();
    }
}
else
{
    Console.WriteLine("not prime");
}
Console.ReadLine();

Wo habe ich falsch gemacht, und wie kann ich es beheben?

  • for (int i = 3; i < a; ich++).............Ändern, wie dies
  • Zunächst einmal müssen Sie lernen, was Primzahlen sind. 2 ist eine Primzahl. Ihre erste if-Anweisung sagt etwas anderes. Dann sollten Sie den E-Modul für jede bekannte prime nicht jedem bekannt number von 2 bis Zahl.
  • fügen Sie einfach eine Bedingung, dass i = a - 1 und dann schreiben Sie es, wie prime oder nicht prime
  • Sie können auch überprüfen, nur bis zur Quadratwurzel der Zahl.
  • Es gibt so viel mehr, das ist falsch mit dem code.
  • ja, ich Stimme Sani Huttunen
  • Doppelte? - stackoverflow.com/questions/3285562/prime-number-formula
  • Nicht duplizieren. Die Frage ist nicht, 'write a prime number generator', es ist 'wo habe ich bloß falsch gemacht'.

InformationsquelleAutor zipo_soft | 2013-01-01
Schreibe einen Kommentar