Cerinţa
Se dă un șir cu n numere naturale. Determinați numărul total de cifre al tuturor numerelor prime din șir.
Date de intrare
Programul citește de la tastatură numărul n, iar apoi n numere naturale.
Date de ieşire
Programul afișează pe ecran numărul C, reprezentând numărul total de cifre al tuturor numerelor prime din șir.
Restricţii şi precizări
1 ≤ n ≤ 1000
cele n numere citite vor fi mai mici decât 1.000.000.000
Exemplu
Intrare
6
83 36 53 401 90 7
Ieșire
8
lozanalex:
C++?
Răspunsuri la întrebare
Răspuns de
5
#include <iostream>
#include <cmath>
using namespace std;
bool prime(int x)
{
int s=sqrt(x),c=0;
for (int i=2; i<=s; i++)
if (x % i == 0 ) c++;
return (!c);
}
int nn(int x)//numar de numere
{
return log10(x)+1;
}
int main()
{
int n,s=0;
cin >> n;
for (int x,i=0; i<n; i++)
{
cin >> x;
if (prime(x)) s+=nn(x);
}
cout << s;
return 0;
}
#include <cmath>
using namespace std;
bool prime(int x)
{
int s=sqrt(x),c=0;
for (int i=2; i<=s; i++)
if (x % i == 0 ) c++;
return (!c);
}
int nn(int x)//numar de numere
{
return log10(x)+1;
}
int main()
{
int n,s=0;
cin >> n;
for (int x,i=0; i<n; i++)
{
cin >> x;
if (prime(x)) s+=nn(x);
}
cout << s;
return 0;
}
Alte întrebări interesante
Engleza,
8 ani în urmă
Engleza,
8 ani în urmă
Biologie,
9 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă