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

Ajutor!!!!
Cerinţa
Se citeşte un număr natural n. Să se afişeze descompunerea în factori primi a lui n.

Date de intrare
Programul citește de la tastatură numărul n.

Date de ieşire
Programul afișează pe ecran perechile b p, reprezentând factorii primi şi puterile corespunzătoare.

Perechile se afişează câte una pe o linie a ecranului, în ordinea crescătoare a bazelor. Cele două valori din pereche sunt separate printr-un spaţiu.

Restricţii şi precizări
1 < n < 2.100.000.000

Exemplu
Intrare

135
Ieșire

3 3
5 1
Explicație
135 = 3la3 * 5la1 .

Răspunsuri la întrebare

Răspuns de stassahul
13
#include <bits/stdc++.h>

using namespace std;

int n;

int main()
{

    cin >> n;

    int d=2,p;

    while(n > 1)
    {

        p = 0;
        while(n%d==0)
        {
            p++;
            n/=d;
        }

        if(p)
            cout << d << " " << p << endl;
        d++;

        if(n>1 and d*d>n)
            d=n;
    }

    return 0;

}
Alte întrebări interesante