RozKoduj się!

Zapraszam do doskonalenia swoich koderskich umiejętności.

Nie jesteś zalogowany na forum.

#1 2015-08-25 15:48:29

Hiraki
Administrator
Dołączył: 2015-08-23
Liczba postów: 7
Windows 7Chrome 44.0.2403.157

[C++] Liczby pierwsze

Sprawdź, które spośród danych liczb są liczbami pierwszymi

Wejście

n - liczba testów n<100000, w kolejnych liniach n liczb z przedziału [1..10000]

Wyjście

Dla każdej liczby słowo TAK, jeśli liczba ta jest pierwsza, słowo: NIE, w przeciwnym wypadku.

Przykład:

Input:
3
11
1
4

Output:
TAK
NIE
NIE
źródło: http://pl.spoj.com/problems/PRIME_T/

Kod:

#include <iostream>
using namespace std;

bool czy_pierwsza(int n);

int main()
{
	int n;
	cin >> n;
	int* tab=new int [n];
	for(int i=0; i<n; i++)
		cin >> tab[i];
	
	for(int i=0; i<n; i++)
		if(czy_pierwsza(tab[i])) cout << "TAK\n";
		else cout << "NIE\n";
		
	delete [] tab;
	return 0;
}

bool czy_pierwsza(int n)
{
	if(n==1) return false;
	
	for(int i=2; i<=(n/2); i++)
	{
		if( !(n%i) )	return false;
	}
	return true;
}

Offline

Użytkowników czytających ten temat: 0, gości: 1
[Bot] ClaudeBot

Stopka

Forum oparte na FluxBB

Darmowe Forum
spoke-forum - mchpxpolska - velheim - neworder - frestyler4fun