Răspuns :
Varianta 1) :
Incepem cautarea factorilor primi de la primul numar prim. Cautam factorii primi cat timp i este mai mic decat n
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
for(int i = 2; i <= n; i++){
int exp = 0;
while(n % i == 0) {
exp++;
n = n / i;
}
if(exp > 0)
cout << i <<" la puterea " << exp <<endl;
}
return 0;
}
Variata 2):
Programul se poate optimiza daca observam ca poate exista un singur factor prim mai mare decat radicalul numarului. O sa cautam factorii primi pana la radicalul numarului
#include <iostream>
using namespace std;
int main() {
int n, i;
cin >> n;
for (i = 2; i * i <= n; i++){ //cautam factorii primi pana la radicalul lui n
int exp = 0;
while(n % i == 0) {
exp++;
n = n / i;
}
if(exp > 0)
cout << i <<" la puterea " << exp <<endl;
}
// daca n mai contine un factor, el este un numar prim la puterea unu
if(n > 1)
cout << n <<" la puterea 1";
return 0;
}
Incepem cautarea factorilor primi de la primul numar prim. Cautam factorii primi cat timp i este mai mic decat n
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
for(int i = 2; i <= n; i++){
int exp = 0;
while(n % i == 0) {
exp++;
n = n / i;
}
if(exp > 0)
cout << i <<" la puterea " << exp <<endl;
}
return 0;
}
Variata 2):
Programul se poate optimiza daca observam ca poate exista un singur factor prim mai mare decat radicalul numarului. O sa cautam factorii primi pana la radicalul numarului
#include <iostream>
using namespace std;
int main() {
int n, i;
cin >> n;
for (i = 2; i * i <= n; i++){ //cautam factorii primi pana la radicalul lui n
int exp = 0;
while(n % i == 0) {
exp++;
n = n / i;
}
if(exp > 0)
cout << i <<" la puterea " << exp <<endl;
}
// daca n mai contine un factor, el este un numar prim la puterea unu
if(n > 1)
cout << n <<" la puterea 1";
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!