poniedziałek, 9 października 2017

00002 - 438 - Liczby pierwsze www.pl.spoj.com


Treść zadania:

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

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

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

Example
Input:
3
11
1
4

Output:
TAK
NIE
NIE

Kod źródłowy w C++:
#include <iostream>

using namespace std;

int main()
{
int q, i;
cin>>q;
for (int j=0; j<q; ++j)
{
    cin>>i;
    if (i==1) {cout<<"NIE"<<endl;}
    if (i==2) {cout<<"TAK"<<endl;}

        int l;
        for(l=2; l<i; ++l)
        {
            if ((i%l) == 0)
            {
                cout<<"NIE"<<endl;
                break;
            }
            if (l == (i-1))
            {
                cout<<"TAK"<<endl;
            }
        }
}
    return 0;
}

Kod źródłowy w C:
#include <stdio.h>
#include <stdlib.h>

int main()
{
int q, i, j, l;
scanf("%d",&q);
for (j=0; j<q; ++j)
{
    scanf("%d",&i);
    if (i==1)
    {
        printf("NIE\n");
    }
    if (i==2)
    {
        printf("TAK\n");
    }
    for(l=2; l<i; ++l)
    {
        if ((i%l) == 0)
        {
            printf("NIE\n");
            break;
        }
        if (l == (i-1))
        {
            printf("TAK\n");
        }
    }
}
    return 0;
}

Kod źródłowy w Python 2:
pierw_spr = []
for i in range(0, 10001, +1):
 pierw_spr.append(0)
for a in range(2, 10001, +1):
 c = a
 if pierw_spr[a] == 0:
  pierw_spr[a] = 1
 while a+c < 10001:
        a = a+c
        pierw_spr[a] = 2
zest = int(raw_input(''))
for i in range(0, zest, +1):
    licz = int(raw_input(''))
    if pierw_spr[licz] == 1:
        print "TAK"
    else:
        print "NIE"
exit(0)

Kod źródłowy w Python 3:
pierw_spr = []
for i in range(0, 10001, +1):
    pierw_spr.append(0)
for a in range(2, 10001, +1):
    c = a
    if pierw_spr[a] == 0:
        pierw_spr[a] = 1
    while a+c < 10001:
        a = a+c
        pierw_spr[a] = 2
zest = int(input(''))
for i in range(0, zest, +1):
    licz = int(input(''))
    if pierw_spr[licz] == 1:
        print ("TAK")
    else:
        print ("NIE")
exit(0)

Link do zadania:
http://pl.spoj.com/problems/PRIME_T/

Brak komentarzy:

Prześlij komentarz