Program C na kontrolu, či je číslo prvočíslo alebo nie

V tomto príklade sa naučíte skontrolovať, či je celé číslo zadané používateľom prvočíslo alebo nie.

Aby ste pochopili tento príklad, mali by ste mať znalosti nasledujúcich tém programovania v jazyku C:

  • C ak … iné vyhlásenie
  • C pre slučku
  • C zlomiť a pokračovať

Prvočíslo je kladné celé číslo, ktoré je deliteľné iba 1samým sebou. Napríklad: 2, 3, 5, 7, 11, 13, 17

Program na kontrolu prvočísla

 #include int main() ( int n, i, flag = 0; printf("Enter a positive integer: "); scanf("%d", &n); for (i = 2; i <= n / 2; ++i) ( // condition for non-prime if (n % i == 0) ( flag = 1; break; ) ) if (n == 1) ( printf("1 is neither prime nor composite."); ) else ( if (flag == 0) printf("%d is a prime number.", n); else printf("%d is not a prime number.", n); ) return 0; ) 

Výkon

 Zadajte kladné celé číslo: 29 29 je prvočíslo. 

V programe je slučka for iterovaná od i = 2do i < n/2.

V každej iterácii sa kontroluje, či je n dokonale deliteľné i, pomocou:

 if (n % i == 0) ( ) 

Ak je n dokonale deliteľné i, n nie je prvočíslo. V tomto prípade je príznak nastavený na 1 a slučka je ukončená pomocou breakpríkazu.

Ak je po cykle n prvočíslo, príznak bude stále 0. Ak však n nie je prvočíslo, príznak bude 1.

Na tejto stránke nájdete informácie o tom, ako môžete tlačiť všetky prvočísla medzi dvoma intervalmi.

Zaujímavé články...