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
Cum e corect?
cout < "As la info";
cout << "As la info";
cout >> "As la info";
Felicitări! Poți mai mult?
Avem sute de probleme pentru tine, fiecare cu explicații ușor de înțeles.
Greșit, dar nu-i bai!
Antrenează-te cu sutele de probleme pe care ți le-am pregătit. Îți explicăm fiecare problemă în parte.
Rezolvare
Iată rezolvarea de 100 de puncte pentru problema Factorizare1:
#include <iostream>
using namespace std;
int main(){
int n;
cin >> n;
int d=2,p,maxp=-1,maxd=0;
while(n>1){
p = 0;
while(n%d == 0)
p++, n /= d;
if(p>maxp)
maxp = p, maxd = d;
else
if(p == maxp)
maxd = d;
d ++;
if(d*d>n && n>1){
if(1>maxp)
maxp = p, maxd = n;
else
if(1 == maxp)
maxd = n;
n = 1;
}
}
cout << maxd;
return 0;
}
Atenție
Enunțurile afișate pe această pagină aparțin exclusiv site-ului PbInfo. Astfel, pentru ștergerea conținutului, puteți să ne contactați la adresa .
Rezolvarea problemei #63 Factorizare1
Pe această pagină găsești rezolvarea de 100 de puncte pentru problema #63 Factorizare1 de pe PbInfo.ro. Atenție: nu încurajăm copiatul codului! Totuși, credem cu tărie că analizarea unei soluții corecte este o metodă foarte ușoară de a învăța informatică, astfel că oferim sursele pentru peste 1500 de probleme de pe platforma PbInfo.ro.
Pentru rezolvări PbInfo de la peste 1500 de probleme, vă invităm să intrați pe site-ul nostru!