Informatică, întrebare adresată de Utilizator anonim, 9 ani în urmă

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 lozanalex
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;
}
Alte întrebări interesante