Am nevoie de ajutor
1. Se da un vector cu n elemente si doua valori a si b. Sa se calculeze media aritmetica a elementelor aflate in intervalul inchis determinat de cele doua valori
2. Se da un vector cu n elemente numere naturale. Sa se verifice daca elmentul de pe pozitia k este numar perfect
3. Se da un vector cu n elemente numere naturale. Sa se afiseze numerele din vector care sunt palindrom
4. Se da un vector cu n elemente nr naturale. Sa se calculeze suma elementelor din vector care au toate cifrele pare.
Răspunsuri la întrebare
Salut!
Ai rezolvarile la probleme in C++ mai jos
1.
#include <iostream>
using namespace std;
int main()
{
int n, v[101], a, b, s = 0, cnt = 0;
cin >> n >> a >> b;
for (int i = 1; i <= n; ++i)
{
cin >> v[i];
}
for (int i = 1; i <= n; ++i)
{
if (v[i] >= a && v[i] <= b)
{
s += v[i];
cnt++;
}
}
cout << (double)s/cnt;
return 0;
}
2.
#include <iostream>
using namespace std;
int main()
{
int n, a[101], k;
cin >> n >> k;
for (int i = 1; i <= n; ++i)
{
cin >> a[i];
}
long long sumaDiv = 0;
for (int i = 1; i * i <= a[k]; i++)
{
if (a[k] % i == 0)
{
sumaDiv += i;
if (i * i != a[k])
{
sumaDiv += a[k] / i;
}
}
}
if (sumaDiv == 2*a[k])
{
cout << "DA";
}
else
{
cout << "NU";
}
return 0;
}
3.
#include <iostream>
using namespace std;
int main()
{
int n, a[101];
cin >> n;
for (int i = 1; i <= n; ++i)
{
cin >> a[i];
}
for (int i = 1; i <= n; ++i)
{
int ogl = 0, c = a[i];
while (a[i])
{
ogl = ogl * 10 + a[i] % 10;
a[i] /= 10;
}
if (c == ogl)
{
cout << c << " ";
}
}
return 0;
}
4.
#include <iostream>
using namespace std;
int main()
{
int n, a[101], s = 0;
cin >> n;
for (int i = 1; i <= n; ++i)
{
cin >> a[i];
}
for (int i = 1; i <= n; ++i)
{
int c = a[i];
bool ok = true;
while (c && ok)
{
if (c % 10 % 2 != 0)
{
ok = false;
}
c /= 10;
}
if (ok)
{
s += a[i];
}
}
cout << s;
return 0;
}