Informatică, întrebare adresată de MadalinaMadutaa, 9 ani în urmă

Pentru n (n<=100) numere întregi x cu cel mult 4 cifre fiecare citite de la tastatură să se determine:
a. Numarul de numere perfecte din sirul valorilor citite.
b. Numarul de numere prime din sirul valorilor citite.
c. Cate elemente palindrom am gasit in sirul de valori citite .

Răspunsuri la întrebare

Răspuns de express
1
#include <bits/stdc++.h>
using namespace std;
long long n, i, x, k, s, d, kinv, j, nrperf, nrp, nrpal;
bool prim;
int main()
{
    cin >> n;
    for(i = 1 ; i <= n ; i ++)
    {
        cin >> x;

        // Punctul a)
        s = 0;
        for(d = 1; d * d < x; d ++)
            if(x % d == 0)
            s = s + d + x / d;

        if(d * d == x) s = s + d;

        if(s - x == x) nrperf ++;

        // Punctul b)
        prim = true;
        for (j = 2; j * j <= x; j ++)
            if(x % j == 0)
            {
                prim = false;
                break;
            }
        if(x == 1 || x == 0) prim = false;
        if( prim ) nrp ++;

        // Punctul c)

        k = x;
        kinv = 0;
        while( k != 0)
        {
            kinv = kinv * 10 + k % 10;
            k = k / 10;
        }

        if(kinv == x) nrpal ++;
    }
    cout << nrperf << "\n";
    cout << nrp << "\n";
    cout << nrpal;
    return 0;
}

Alte întrebări interesante