#1847 PBINFO
Cerinţa
Scrieți definiția completă a subprogramului C++ recursiv P care primeşte prin intermediul parametrului n un număr natural nenul (n≤100), iar prin intermediul parametrului x un tablou unidimensional cu n componente întregi, de maximum șase cifre fiecare.
Subprogramul furnizează prin intermediul parametrului s suma elementelor din tabloul x care au valori numere prime.
Restricţii şi precizări
0 < n ≤ 100
numele subprogramului cerut este P
parametrii sunt, în această ordine: x, n, s
elementele vectorului x sunt indexate de la zero
se recomandă realizarea unei soluții recursive
Exemplu
Dacă n=6 și x=(12, 7, 6, 3, 8, 5), după apel s=15.
Important
Soluţia propusă va conţine definiţia subprogramului cerut și eventual al altor subprograme, apelate de acesta. Prezenţa în soluţie a altor instrucţiuni poate duce erori de compilare sau de execuţie care vor avea ca efect depunctarea soluţiei.
int prim(int n) { int d = 2; while(d * d <= n && n % d != 0) d++; return (d * d > n && n > 1); } void P(int a[], int n, int &s) { if(n == 1) s = 0; else P(a, n - 1, s); if(prim(a[n - 1])) s = s + a[n - 1]; }
Vă mulțumim că ați ales să vizitați site-ul nostru dedicat Informatică. Sperăm că informațiile prezentate v-au fost utile. Dacă aveți alte întrebări sau aveți nevoie de asistență suplimentară, nu ezitați să ne contactați. Vă așteptăm cu drag să reveniți și nu uitați să ne salvați în lista de favorite!