Pagini recente » Cod sursa (job #1835118) | Cod sursa (job #1111124) | Cod sursa (job #434500) | Cod sursa (job #2498055) | Cod sursa (job #2042195)
#include <iostream>
#include <cstdio>
#include <string>
using namespace std;
unsigned int a,c,b,ant;
unsigned int s,m;
unsigned int pow(int p)
{
int r=1;
int b=10;
while(p)
{
if(p%2==0)
{
b*=b;
p/=2;
}
if(p%2==1)
{
r*=b;
p--;
b*=b;
p/=2;
}
}
return r;
}
int main()
{
freopen("calcul.in","r",stdin);
freopen("calcul.out","w",stdout);
scanf("%d\n%x\n%d", &a,&b,&c);
m=pow(c);
ant=s=a;
for(int i=1; i<b; i++)
{
ant=(ant*a)%m;
s=(s+ant)%m;
}
if(c==2)
printf("%02d", s);
else if(c==3)
printf("%03d", s);
else if(c==4)
printf("%04d", s);
else if(c==5)
printf("%05d", s);
else if(c==6)
printf("%06d", s);
else if(c==7)
printf("%07d", s);
else if(c==8)
printf("%08d", s);
else if(c==9)
printf("%09d", s);
else
cout<<s;
return 0;
}