Pagini recente » Cod sursa (job #1878058) | Cod sursa (job #2355691) | Cod sursa (job #1808298) | Cod sursa (job #2414555) | Cod sursa (job #2287640)
#include <iostream>
#include <fstream>
#include <cstring>
using namespace std;
ifstream fin("ssnd.in");
ofstream fout("ssnd.out");
int nr_divizori(int nr)
{
int ok=0, d;
for(d=1;d*d<nr;d++)
if(nr%d==0)
{
ok++;
if(d*d<nr)
ok++;
}
if(d*d==nr)
ok++;
return ok;
}
int suma_divizori(int nr)
{
int d;
long long int s=0;
for(d=1;d*d<nr;d++)
if(nr%d==0)
s=s+d+nr/d;
if(d*d==nr)
s=s+d;
return s;
}
int main()
{
int n, x, v[1001];
fin>>n;
for(int i=1;i<=n;i++)
fin>>v[i];
fout<<"\n";
for(int i=1;i<=n;i++)
{
fout<<nr_divizori(v[i])<<" "<<suma_divizori(v[i])<<"\n";
}
return 0;
}