Jak sprawdzić, czy liczba całkowita jest liczbą pierwszą, czy nie jest?

Sprawdzamy, czy liczba całkowita jest liczbą pierwszą, czy nie jest?

Liczba pierwsza – to taka liczba naturalna, która ma dokładnie dwa dzielniki naturalne: jedynkę i samą siebie.

Użytkownik wprowadza liczbę całkowitą, a metoda powinna wypisać TAK lub NIE w zależności od tego, czy wejściowa liczba całkowita jest liczbą pierwszą, czy nie jest.

Logika polega na znalezieniu liczby całkowitej mniejszej lub równej pierwiastkowi kwadratowemu z wejściowej liczby całkowitej. Jeśli istnieje dzielnik liczby, który jest mniejszy niż pierwiastek kwadratowy z liczby, wówczas będzie dzielnik liczby, który jest większy niż pierwiastek kwadratowy liczby. Dlatego musimy przejść do pierwiastka kwadratowego z liczby.

Rozwiązanie

public static bool FindPrime(int number)
{
   if (number == 1) return false;
   if (number == 2) return true;
   if (number % 2 == 0) return false;

   var squareRoot = (int)Math.Floor(Math.Sqrt(number));

   for (int i = 3; i <= squareRoot; i += 2)
      if (number % i == 0) return false;         

   return true;
}

I sprawdzenie naszego rozwiązania.

static void Main(string[] args)
{
   while (true)
   {
      Console.Write("Podaj liczbe: ");
      int expression = Int32.Parse(Console.ReadLine());

      if (FindPrime(expression))
         Console.WriteLine("TAK");
      else
         Console.WriteLine("NIE");
      
      Console.ReadLine();
      Console.Clear();
   }        
}

I prezentacja wyniku z konsoli.

4 comments

  1. What’s Happening i am new to this, I stumbled upon this I’ve discovered
    It absolutely helpful and it has aided me
    out loads. I am hoping to contribute different users like
    its helped
    me. Great job.

  2. Nice blog here! Also your site loads up very fast!

    What host are you using? Can I get your affiliate link to your host?

    I wish my website loaded up as fast as
    yours lol

  3. Jeśli będziesz przykładnie pracował osiem godzin dziennie, może ci się kiedyś uda zostać kierownikiem i pracować dwanaście. R. Frost

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *