Cod sursa(job #156578)

Utilizator ZozelZozo Zozo Zozel Data 12 martie 2008 17:14:46
Problema Cifra Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.91 kb
#include<stdio.h>
#include<stdlib.h>
int main(){
FILE *fin=fopen("cifra.in","r");
FILE *fout=fopen("cifra.out","w");

int u,add,twostate,T,i,j;
char number[500],aux;

fscanf(fin,"%d\n",&T);
 for(j=0;j<T;j++){
  for(i=0;i<200;i++) number[i]='z';
   i=0;
 while(!feof(fin)){
  aux=fgetc(fin);
  if(aux>47 && aux<58)
  number[i]=aux;
  else break;
  i++;
 }
   u=atoi(&number[i-2]);
   if(!u){
      fprintf(fout,"%d\n",u%10);
     }
   else{
   twostate=u/10*10+2;
   u/=10;u*=7;u%=10;
   add=atoi(&number[i-1]);
   twostate=(twostate%4==0)?6:4;
 switch(add){
  case 1:u++;break;
  case 2:u+=twostate+1;break;
  case 3:u+=twostate+8;break;
  case 4:u+=twostate+4;break;
  case 5:u+=twostate+9;break;
  case 6:u+=twostate+5;break;
  case 7:u+=twostate+8;break;
  case 8:u+=8;break;
  case 9:u+=7;break;
 }
  fprintf(fout,"%d\n",u%10);
 }
}
   fclose(fin);
   fclose(fout);
return 0;
}