Navigace: Hlavní stránka -> Jazyk C -> 04 Cykly -> 04.22 Hledání prvočísla dle zadaného pořadí

MENU

04.22 Hledání prvočísla dle zadaného pořadí

Zadání:
Sestavte program, který nalezne prvočíslo dle zadaného pořadí.
Řešení:
Řešení vychází z programu 04.21. Na začátku programu vložíme do proměnné c hodnotu 1 (jedna). Pomocí cyklu
DO ... WHILE vždy zvýšíme hodnotu této proměnné o 1 a otestujeme, zda obsahuje prvočíslo. Pokud ano,
zvýšíme hodnotu proměnné p o 1 (v této proměnné evidujeme počet nalezených prvočísel). Cyklus ukončíme tehdy,
když bude počet nalezených prvočísel shodný se zadaným pořadím. Pak nalezené prvočíslo vytiskneme.
#include "stdafx.h"
#include "math.h"
#include 

using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
	int c,i,n,p;
    bool prvocislo;

    printf("Zadejte, kolikate prvocislo chcete najit: ");
    scanf_s("%d",&n,1);

    c=1;
    p=0;
   
    do
	{
       c++;
       prvocislo=true;
       for (i=2; i<=(int)sqrtf(c); i++) if (c%i==0) prvocislo=false;
       if (prvocislo) p++;
	}
    while (p!=n);

    printf("%d.prvocislo: %d\n",n,c);

    system("pause");
	return 0;
}
program ke stažení
Pro studenty:
Uvedený program předpokládá, že prvním prvočíslem je hodnota 2.