Cod Python si C++ pentru a genera al N-lea numar prim. N introdus de la tastatura
Las mai jos codul care afiseaza al N-lea numar prim, unde N este introdus de la tastatura. Incep cu codul Python dupa care va voi lasa si codul scris in C++ care rezolva aceasi problema.
Rezolvarea in Python:
def este_prim(n): if n <= 1: return False for i in range(2, int(n**0.5) + 1): if n % i == 0: return False return True def al_nlea_prim(n): contor_prime = 0 candidat = 2 while contor_prime < n: if este_prim(candidat): contor_prime += 1 candidat += 1 return candidat - 1 N = int(input("Introduceți valoarea lui N: ")) print("Al", N, "-lea număr prim este", al_nlea_prim(N))
În acest cod, funcția este_prim
este folosită pentru a determina dacă un număr este prim sau nu. Funcția al_nlea_prim
folosește funcția este_prim
pentru a genera al n-lea număr prim prin numărarea numerelor prime găsite și returnarea numărului candidat atunci când s-a găsit numărul dorit de prime. Utilizatorului i se cere să introducă valoarea lui N, iar codul afișează al n-lea număr prim.
Rezolvarea in C++:
#include <iostream> #include <cmath> using namespace std; bool este_prim(int n) { if (n <= 1) { return false; } for (int i = 2; i <= sqrt(n); i++) { if (n % i == 0) { return false; } } return true; } int al_nlea_prim(int n) { int contor_prime = 0; int candidat = 2; while (contor_prime < n) { if (este_prim(candidat)) { contor_prime++; } candidat++; } return candidat - 1; } int main() { int N; cout << "Introduceți valoarea lui N: "; cin >> N; cout << "Al " << N << "-lea număr prim este " << al_nlea_prim(N) << endl; return 0; }
În acest cod, funcția este_prim
este folosită pentru a determina dacă un număr este prim sau nu. Funcția al_nlea_prim
folosește funcția este_prim
pentru a genera al n-lea număr prim prin numărarea numerelor prime găsite și returnarea numărului candidat atunci când s-a găsit numărul dorit de prime. Utilizatorului i se cere să introducă valoarea lui N prin intermediul cin
, iar codul afișează al n-lea număr prim prin intermediul cout
.
Nu uita: Învață, exersează, repetă!
Author: Sebastian Chetroni
Website: https://zcoder.ro
Articole recente
- Olimpiada Nationala de Informatica 2023. Rezolvare problema „Cadouri” in C++, clasa a V-a
- Olimpiada Nationala de Informatica 2023. Rezolvare problema „Patinaj” in C++, clasa a V-a
- Olimpiada Judeteana de Informatica 2018. Rezolvare problema „Forus” in C++, clasa a V-a
- Olimpiada Judeteana de Informatica 2018. Rezolvare problema „Patrate” in C++, clasa a V-a
- Olimpiada Judeteana de Informatica 2019. Rezolvare problema „Cartele” in C++, clasa a V-a
Comentarii recente