C Programa patikrinti, ar skaičius yra pagrindinis, ar ne

Šiame pavyzdyje išmoksite patikrinti, ar vartotojo įvestas sveikasis skaičius yra pirminis skaičius, ar ne.

Norėdami suprasti šį pavyzdį, turėtumėte žinoti šias C programavimo temas:

  • C jei … dar pareiškimas
  • C kilpai
  • C pertrauka ir toliau

Pirminis skaičius yra teigiamas sveikasis skaičius, kuris dalijasi tik 1pats iš savęs. Pvz .: 2, 3, 5, 7, 11, 13, 17

Programa tikrinti pirminį skaičių

 #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; ) 

Rezultatas

 Įveskite teigiamą skaičių: 29 29 yra pagrindinis skaičius. 

Programoje „for for loop“ kartojamas nuo i = 2iki i < n/2.

Kiekvienoje iteracijoje patikrinama, ar n yra visiškai padalijamas iš i, naudojant:

 if (n % i == 0) ( ) 

Jei n yra visiškai padalijamas iš i, n nėra pirminis skaičius. Tokiu atveju vėliava nustatoma į 1, o ciklas nutraukiamas naudojant breakteiginį.

Po ciklo, jei n yra pagrindinis skaičius, vėliava vis tiek bus 0. Tačiau, jei n yra ne pirminis skaičius, vėliava bus 1.

Apsilankykite šiame puslapyje ir sužinokite, kaip galite spausdinti visus pirminius skaičius tarp dviejų intervalų.

Įdomios straipsniai...