Informatică, întrebare adresată de ilaria19, 8 ani în urmă

Cerinta:
Scrieti definitia completa a subprogramului C++ cu antetul:
void f_expo(int a[],int n)
care are 2 parametri:
a, prin care primeste un tablou unidimensional de numere naturale
n, numarul efectiv de elemente ale tabloului
Subprogramul furnizeaza rezultatul tot prin intermediul tabloului a. Pentru fiecare element a[i], i=0,...i=n-1 se calculeaza exponentul maxim e cu propietatea ca 2^e<=a[i], iar rezultatul se va memora tot in a[i].
Restrictii:1<=a[i]<=1000000
2<=n<=5000000​

Răspunsuri la întrebare

Răspuns de Mghetes
0

Răspuns:

Am atasat rezolvarea

Explicație:

Anexe:

davidgatea25: Pt 100 puncte PB info
davidgatea25: void f_expo(int a[], int n) {
int e;
for (int i = 0; i < n; i++){
e = 0;
while (a[i] > 0) {
if (a[i] < 4 && a[i] >= 2)e++;
else if (a[i] < 8 && a[i] >= 4)e += 2;
else if(a[i]>=8)e+=3;
a[i] /= 8;
}
a[i] = e;
}
}
Alte întrebări interesante