Se citesc două numere naturale nenule, n și m, și se cere să se scrie numărul valorilor prime care apar la
aceeași putere atât în descompunerea în factori primi a lui n, cât și în descompunerea în factori primi a lui m.
Exemplu: dacă n=16500 și m=10780, atunci se scrie 2
clasa a 9a
Răspunsuri la întrebare
Răspuns de
5
#include <iostream>
#include <cmath>
using namespace std;
int main(){
int n,m,ndiv=0,p=1,i=2;
cin >> n >> m;
//Cautam divizorii primi ai lui n
while(n!=1){
//Daca n e divizibil cu i
if(n%i==0){
p=1;
//Afla puterea lui i
while(n%i==0){
p*=i;
n=n/i;
}
//Daca m e divizibil cu puterea lui i in mod maximal creste contorul de numere gasite
if(m%p==0 && m%(p*i)!=0)ndiv++;
}
//Incrementeaza la i urmator
i++;
}
cout << ndiv;
}
Alte întrebări interesante
Limba română,
8 ani în urmă
Engleza,
8 ani în urmă
Limba română,
8 ani în urmă
Biologie,
8 ani în urmă
Biologie,
8 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă