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();
}
}
Keep up the good work!
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.
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
Jeśli będziesz przykładnie pracował osiem godzin dziennie, może ci się kiedyś uda zostać kierownikiem i pracować dwanaście. R. Frost