Cod sursa(job #17245)

Utilizator maria_bobesMaria Bobes maria_bobes Data 15 februarie 2007 13:55:04
Problema Cifra Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.76 kb
#include<stdio.h>

FILE *f;
int main()
{
 long d[300];
 int v[1000];
 int T;
 int i,c,a;
 f=fopen("cifra.in","r");
 fscanf(f,"%d",&T) ;
 long max=0;
 for(i=1;i<=T;i++)
  {
   fscanf(f,"%ld",&d[i]);
   if(d[i]>max)
    max=d[i];
  }
   fclose(f);

   v[0]=0;
   for(i=1;i<=max;i++)
   {
    c=i%10;
    if(c==2||c==3||c==7||c==8)
    {
     a=i%4;
     if(a==0) a=4;
     while(a)
     {
      c=c*c;
      c=c%10;
      a--;
     }
    }
    else
     if(c==4||c==9)
      {
       a=i%2;
       if(a==0) a=2;
       while(a)
       {
	c=c*c;
	c=c%10;
	a--;
       }
      }
    v[i]=v[i-1]+c;
    v[i]=v[i]%10;
   }
 f=fopen("cifra.out","w");
 for(i=1;i<=T;i++)
   fprintf(f,"%d\n",v[d[i]]);

 fclose(f);

 return 0;

}