Cod sursa(job #149327)

Utilizator jeanFMI - Petcu Ion Cristian jean Data 5 martie 2008 16:30:00
Problema Cifra Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.42 kb
#include<fstream.h>
#include<string.h>
char  v[30000][101];
int c,r,t,i,k=0,j;
int main()
{
ifstream f("cifra.in");
ofstream g("cifra.out");
 f>>t;
for(i=1;i<=t;i++)
 f>>v[i];
for(i=1;i<=t;i++)
 {j=strlen(v[i]);

  if(j==1)

  {r=v[i][j-1]-48; c=0;
  switch(r)
  { case 1:c+=1; break;
    case 2:c+=5; break;
    case 3:c+=2; break;
    case 4:c+=8; break;
    case 5:c+=3; break;
    case 6:c+=9; break;
    case 7:c+=2; break;
    case 8:c+=8; break;
    case 9:c+=7; break;
  }


   g<<c%10<<'\n';}

  else

  {r=v[i][j-1]-48; c=0;

  if((v[i][j-2]-48)%2==0)
  switch(r)
  { case 1:c+=1; break;
    case 2:c+=5; break;
    case 3:c+=2; break;
    case 4:c+=8; break;
    case 5:c+=3; break;
    case 6:c+=9; break;
    case 7:c+=2; break;
    case 8:c+=8; break;
    case 9:c+=7; break;
  }
  else
    switch(r)
     { case 1:c+=1; break;
       case 2:c+=7; break;
       case 4:c+=6; break;
       case 5:c+=1; break;
       case 6:c+=7; break;
       case 7:c+=4; break;
       case 8:c+=8; break;
       case 9:c+=7; break;
     }



  r=v[i][j-2]-48;


   switch(r)
    { case 1:c+=7; break;
      case 2:c+=4; break;
      case 3:c+=1; break;
      case 4:c+=8; break;
      case 5:c+=5; break;
      case 6:c+=2; break;
      case 7:c+=9; break;
      case 8:c+=6; break;
      case 9:c+=3; break;
    }
   g<<c%10<<'\n';}

 }
f.close();
g.close();
return 0;
}