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

Cerinţa
Să se scrie un program care citeşte un număr natural n şi determină factorul care apare în descompunerea în factori primi a lui n la puterea cea mai mare.

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

Date de ieşire
Programul afișează pe ecran numărul prim p, cu semnificaţia precizată.

Restricţii şi precizări
1 < n < 2.100.000.000
dacă în descompunerea în factori primi a lui n apar mai mulţi factori la puterea maximă, se va afişa cel mai mare dintre ei



Exemplu
Intrare

405
Ieșire

3
Explicație
405 = 3 4 * 5 1 . Astfel, factorul care apare la puterea cea mai mare este 3

Răspunsuri la întrebare

Răspuns de artur99
9
#include <iostream>
using namespace std;

int main(){
    int i, n, np2, pt, max_p=0, max_nr=0;
    cin>>n;
    np2 = n/2;
    for(i=2; i<=np2; i++){
        pt = 0;
        while(n%i){
            pt++;
            n = n/i;
        }
        if(pt > max_p){
            max_p = pt;
            max_nr = i;
        }
    }
    cout<<max_nr;
    return 0;
}

Biencutza21: nu este bun
MadalinaMadutaa: Ba da
Biencutza21: mie nu mi-a dat bine
Biencutza21: si l-am scris ca el
artur99: Pe pbinfo nu a dat punctajul? Sau ce s-a întâmplat? :)) A dat eroare la compilare? Sau rezultat greșit?
Alte întrebări interesante