Program C ++ na zobrazenie prvočísel medzi dvoma intervalmi

Príklad na tlač všetkých prvočísel medzi dvoma číslami (zadanými používateľom) v programovaní v C ++. Tento problém je vyriešený pomocou príkazu nested for loop a if … else.

Aby ste pochopili tento príklad, mali by ste mať znalosti nasledujúcich programovacích tém C ++:

  • C ++ ak, ak … inak a Vnorené, ak … inak
  • C ++ pre slučku
  • Príkaz C ++ na prerušenie a pokračovanie

Príklad č. 1: Zobrazenie prvočísel medzi dvoma intervalmi

 #include using namespace std; int main() ( int low, high, i; bool isPrime = true; cout <> low>> high; cout << "Prime numbers between " << low << " and " << high << " are: " << endl; while (low < high) ( isPrime = true; if (low == 0 || low == 1) ( isPrime = false; ) else ( for (i = 2; i <= low / 2; ++i) ( if (low % i == 0) ( isPrime = false; break; ) ) ) if (isPrime) cout << low << " "; ++low; ) return 0; ) 

Výkon

 Zadajte dve čísla (intervaly): 0 20 Prvočísla medzi 0 a 20 sú: 2 3 5 7 11 13 17 19

V tomto programe je whileslučka iterovaná (high - low - 1)krát.

V každej iterácii sa kontroluje, či je low prvočíslo alebo nie, a hodnota low sa zvyšuje o 1, kým low nie je rovná high.

Na tejto stránke nájdete ďalšie informácie o tom, ako skontrolovať, či je číslo prvočíslo alebo nie.

Ak používateľ najskôr zadá väčšie číslo, tento program nebude fungovať podľa očakávaní. Tento problém môžete vyriešiť zamenením čísel, ak používateľ najskôr zadá väčšie číslo.

Príklad č. 2: Zobrazenie prvočísel pri prvom zadaní väčšieho čísla

 #include using namespace std; int main() ( int low, high, temp, i; bool isPrime; cout <> low>> high; //swapping numbers if low is greater than high if (low> high) ( temp = low; low = high; high = temp; ) cout << "Prime numbers between " << low << " and " << high << " are:" << endl; while (low < high) ( isPrime = true; if (low == 0 || low == 1) ( isPrime = false; ) else ( for (i = 2; i <= low / 2; ++i) ( if (low % i == 0) ( isPrime = false; break; ) ) ) if (isPrime) cout << low << " "; ++low; ) return 0; ) 

Výkon

 Zadajte dve čísla (intervaly): 20 0 Prvočísla medzi 0 a 20 sú: 2 3 5 7 11 13 17 19

Navštívte túto stránku a zistite, ako môžete pomocou používateľskej funkcie zobraziť všetky prvočísla medzi dvoma intervalmi.

Zaujímavé články...