Zadatak:Prosti brojevi

Treba napisati program koji ispisuje koliko ima prostih brojeva među prvih N prirodnih brojeva,te ispisati koji je K-ti prosti broj (1<=K<=N)

 

Ulazni podaci

Sa tastature se u jednom redu učitava prirodan broj N(N<=10000),a u drugom redu prirodan broj K(1<=K<=N)

 

Izlazni podaci

Na ekranu ispisati broj prostih brojeva koji su manji ili jendaki od N.Ako takvih nema ispisati poruku NEMA IH.Ako ih ima onda ispisati K-ti prosti broj.

 

KOD:

#include <iostream>
#include <cstdlib>
using namespace std;

bool Prosti(int broj)
{
    int prosti=true;
    if(broj==2)
    {
        return true;
    }
    else
    {
    for(int i=3;i<broj-1;i++)
    {
        if(broj%i==0)
        {
            prosti=false;
            break;
        }
    }
    if(prosti==true)
    {
        return true;
    }
    else
    return false;
}
}
int main()
{
    int broj,l;
    cin>>broj>>l;
    int *niz;
    niz=new int[broj];

    if(broj==1)
    {
        cout<<"Nema ih!"<<endl;
    }
    else
    {
    for(int i=0;i<broj;i++)
    {
        niz[i]=0;
    }
    int k=0,brojac=0;
    for(int i=3;i<broj;i++)
    {
        if(Prosti(i)==true)
        {
            niz[k]=i;
            k++;
            brojac++;
        }
    }
    cout<<brojac<<endl;
    cout<<niz[l-1];
   }
    system("pause");
    return 0;
}</pre>
<pre>

Komentariši