Cerința
Se dau două numere naturale. Afișați numărul pentru care suma factorilor primi este mai mare. Dacă cele două numere au aceași sumă a factorilor primi, afișați-l pe cel mai mic.
Date de intrare
Programul citește de la tastatură două numere naturale.
Date de ieșire
Programul va afișa pe ecran numărul cerut.
Restricții și precizări
- cele două numere citite vor fi mai mici decât
1.000.000.000
Exemplu
Intrare
36 26
Ieșire
26
Explicație
Factorii primi ai lui 36
sunt 2
și 3
, cu suma 5
. Factorii primi ai lui 26
sunt 2
și 13
, cu suma 15
. Rezultatul este 26
, pentru că are suma factorilor primi mai mare.
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 Factori1:
#include <iostream>
#include <cstdlib>
#include <cassert>
using namespace std;
int main()
{
int n , m , a , b, s = 0 , t = 0 , d;
cin >> n >> m;
a = n , b = m;
d = 2;
while(n > 1)
{
if(n % d == 0)
{
s += d;
while(n % d == 0)
n /= d;
}
d ++;
if(d * d > n)
d = n;
}
d = 2;
while(m > 1)
{
if(m % d == 0)
{
t += d;
while(m % d == 0)
m /= d;
}
d ++;
if(d * d > m)
d = m;
}
if(s > t)
cout << a;
else
if(s < t)
cout << b;
else
if(a < b)
cout << a;
else
cout << b;
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 #3352 Factori1
Pe această pagină găsești rezolvarea de 100 de puncte pentru problema #3352 Factori1 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!