fbpx

Problema #161 – inlocuire – Rezolvari PBInfo

de Mihai-Alexandru

Cerinţa

Se dă un vector cu n elemente, numere naturale. Să se înlocuiască toate elementele nule din vector cu partea întreagă a mediei aritmetice a elementelor nenule din vector.

Date de intrare

Programul citește de la tastatură numărul n, iar apoi n numere naturale, separate prin spaţii, reprezentând elementele vectorului.

Date de ieşire

Programul afișează pe ecran elementele vectorului, după înlocuire.

Restricţii şi precizări

  • 1 ≤ n ≤ 200
  • elementele vectorului vor fi mai mici decât 1000
  • vectorul va conține cel puțin un element nenul

Exemplu

Intrare

5
0 2 0 4 5

Ieșire

3 2 3 4 5

Explicație

Elementele nenule din vectorul dat sunt 2, 4 și 5. Media lor aritmetică este 3.666, iar partea întreagă a ei este 3.

#include <bits/stdc++.h>
using namespace std;

int main()
{
    int n,a[201],x,sum=0,cate=0;
    cin>>n;
    for(int i=1;i<=n;i++) cin >> a[i];
    for(int i=1;i<=n;i++)
        {
            if(a[i]!=0)
            {
                sum=sum+a[i];
                cate++;
            }
        }
    int med = sum/cate;
     for(int i=1;i<=n;i++)
    {
       if(a[i]==0) cout<<med<<" ";
       else cout<<a[i]<<" ";
    }
     return 0;
}
Comentarii

S-ar putea sa iti placa