Se citeşte un vector cu n elemente. Să se şteargă din vector elementele cu număr maxim de cifre impare, folosind un subprogram.
In C++, va rog!
Răspunsuri la întrebare
Răspuns de
0
Răspuns:
#include <iostream>
using namespace std;
int nrCifImp(int m)
{
int c=0, cif;
while (m)
{
cif=m%10;
if (cif%2==1) ++c;
m=m/10;
}
return c;
}
int n, v[100],v2[100], i, k, num, nrmaxCifImp=0;
int main()
{
cin >> n;
for (i=0; i<n; i++)
{
cin >> v[i];
num=v[i];
if (nrCifImp(num)>nrmaxCifImp)
nrmaxCifImp=nrCifImp(num);
}
for (i=0; i<n; i++)
{
if (nrCifImp(v[i])!=nrmaxCifImp)
v2[k++]=v[i];
}
for (i=0; i<k; i++)
cout << v2[i] << " ";
return 0;
}
Explicație:
am pus rezultatul in alt vector, e mai eficient decat sa faci acele deplasari de elemente in caz de lichidare elemente...
Alte întrebări interesante
Istorie,
8 ani în urmă
Franceza,
8 ani în urmă
Limba română,
8 ani în urmă
Matematică,
8 ani în urmă
Limba română,
9 ani în urmă
Limba română,
9 ani în urmă