👤

Pentru n (n<=100) numere întregi x cu cel mult 4 cifre fiecare citite de la tastatură să se determine:
a. Numărul de numere prime din şirul valorilor citite
b. Numărul de numere care reprezintă o putere a lui 3
c. Numărul de numere a căror invers reprezintă un număr prim


Răspuns :

#include <bits/stdc++.h>
using namespace std;
long long n, i, x, k, s, kinv, j, nro, nrp, nr3;
bool prim, primk;
int main()
{
    cin >> n;
    for(i = 1 ; i <= n ; i ++)
    {
        cin >> x;
        
        // Punctul a)
        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 b;
        k = x;
        while(k % 3 == 0)
         k = k / 3;
        if(k == 1) nr3 ++;
        
        // Punctul c)
        k = x;
        kinv = 0;
        while( k != 0)
        {
            kinv = kinv * 10 + k % 10;
            k = k / 10;
        }
        primk = true;
        for (j = 2; j * j <= kinv ; j++)
            if(kinv % j == 0)
            {
                primk = false;
                break;
            }
        if(kinv == 1 || kinv == 0) prim = false;
        if( primk ) nro ++;
    }
    cout << nrp << "\n";
    cout << nr3 << "\n";
    cout << nro;
    return 0;
}

Vă mulțumim pentru vizita pe site-ul nostru dedicat Informatică. Sperăm că informațiile disponibile v-au fost utile și inspiraționale. Dacă aveți întrebări sau aveți nevoie de suport suplimentar, suntem aici pentru a vă ajuta. Ne face plăcere să vă revedem și vă invităm să adăugați site-ul nostru la favorite pentru acces rapid!


Ez Studiers: Alte intrebari