👤

Scrieţi definiţia completă a unui subprogram P, cu trei parametri:
• a, un tablou unidimensional de cel mult 100 de numere întregi cu cel mult 4 cifre; • n, numărul efectiv de elemente ale tabloului;
• k, un număr natural (0 Subprogramul va returna cea mai mică sumă care se poate obţine adunând exact k elemente ale tabloului. (10p.) Exemplu: dacă n=6 şi k=4, iar şirul este format din elementele (9, 3, 5, 4, 2, 3), atunci la apel se va returna valoarea 12.


Răspuns :

Răspuns:

int p(int a[], int n, int k)

{

int sum=0;

bool ok=false;

do{

ok=false;

for(int i=0; i<n-1; ++i){

if(a[i]>a[i+1]){

int aux=a[i];

a[i]=a[i+1];

a[i+1]=aux;

ok=true;

}

}while(ok);

for(int i=0; i<k;++i)

sum+=a[i];

return sum;

}