n-numar natural cu maxim 9 cifre
subprogramul "divizor" returneaza prin parametrul d c.m.m.d prim al lui n, iar prin parametrul p puterea la care acest divizor apare la descompunerea in factori primi a lui n.
Răspunsuri la întrebare
Răspuns de
1
#include <iostream>
#include <fstream>
using namespace std;
void divizor(unsigned n, unsigned &d, unsigned &p)
{
unsigned a[3000],i, t, aux=n;
for(i=0; i<2999; i++)
a[i]=0;
while(n%2==0)
{
a[2]++;
n=n/2; }
t=3;
while(n>1)
{
while(n%t==0)
{
a[t]++;
n=n/t;
}
t=t+2;
}
for(i=2; i<=aux; i++)
if(a[i]>0)
{
d=i;
p=a[i];
}
}
int main()
{ ifstream f("fisier.txt");
unsigned n, d=0, p=0;
f >> n;
divizor(n, d, p);
cout << d << " " << p;
return 0;
}
#include <fstream>
using namespace std;
void divizor(unsigned n, unsigned &d, unsigned &p)
{
unsigned a[3000],i, t, aux=n;
for(i=0; i<2999; i++)
a[i]=0;
while(n%2==0)
{
a[2]++;
n=n/2; }
t=3;
while(n>1)
{
while(n%t==0)
{
a[t]++;
n=n/t;
}
t=t+2;
}
for(i=2; i<=aux; i++)
if(a[i]>0)
{
d=i;
p=a[i];
}
}
int main()
{ ifstream f("fisier.txt");
unsigned n, d=0, p=0;
f >> n;
divizor(n, d, p);
cout << d << " " << p;
return 0;
}
Alte întrebări interesante
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
Engleza,
9 ani în urmă