Pagini recente » Cod sursa (job #749341) | Cod sursa (job #1962286) | Cod sursa (job #2366439) | Cod sursa (job #836337) | Cod sursa (job #81401)
Cod sursa(job #81401)
#include<stdio.h>
int r1,r2,a,b,x,y,z,M;
long long r(int n)
{
if(n==0) return r1;
if(n==1) return r2;
return (a*r(n-2)*r(n-2))+(b*r(n-1)*r(n-1))+(x*r(n-2))+(y*r(n-1))+z;
}
int main()
{
int i,sir[2],rez;
int n;
FILE *f=fopen("rsir.in","r");
fscanf(f,"%i",&r1);
fscanf(f,"%i",&r2);
fscanf(f,"%i",&a);
fscanf(f,"%i",&b);
fscanf(f,"%i",&x);
fscanf(f,"%i",&y);
fscanf(f,"%i",&z);
fscanf(f,"%i",&M);
fscanf(f,"%i",&n);
sir[0]=r1;
sir[1]=r2;
printf("n=%i",n);
/*for(i=0;i<=n;i++)
{}*/
//n=7;
for(i=2;i<=n;i++)
{
rez=((((a%M)*(sir[0]%M)*(sir[0]%M))%M)+(((b%M)*(sir[1]%M)*(sir[1]%M))%M)+(((x%M)*(sir[0]%M))%M)+(((y%M)*(sir[1]%M))%M)+(z%M))%M;
sir[0]=sir[1];
sir[1]=rez;
}
f=fopen("rsir.out","w");
fprintf(f,"%i",rez%M);
fclose(f);
return 0;
}