Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Liczby pierwsze problem z algorytmem


Rekomendowane odpowiedzi

Opublikowano

Witam :) Mam problem z algorytmem, który ma za zadanie sprawdzić czy liczba jest pierwszą. Mam kod który działa bardzo marnie:

#include <iostream>
using namespace std;

int main()
{
	int n;
	cin >> n;

	for (int i = 1; i <= n; i++)
	{
		int a;
		cin >> a;

		if (a == 1)
		{
			cout << "NIE" << endl;
		}
		else
		{
			for (int p = 2; p < a; p++)
			{
				if (a % p == 0)
				{
					cout << "NIE" << endl;
					break;
				}
				cout << "TAK" << endl;

			}
		}
	}
	return 0;
}

Liczba n to ilość liczb które chcemy sprawdzić :) Miał ktos styczność z czymś podobnym ? Podając np: 3 i 11 wyskakuje kilka razy TAK :/ Nie wiem jak sobie poradzić z tym.

Opublikowano

Wypisywanie powinno być poza drugą pętlą i powinieneś sprawdzać nie

p < a;
tylko
p < sqrt(a);
Opublikowano

Wynika to z tego, że dzielniki mniejsze od pierwiastka z danej liczby są wystarczające, by odnaleźć wszystkie dzielniki danej liczby.

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...