Cod sursa(job #1531139)
Utilizator | Brabete Adrian adrianbrabete | Data | 21 noiembrie 2015 13:23:09 |
---|---|---|---|
Problema | Cifra | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 1.49 kb |
#include<fstream>
using namespace std;
int z,n,sum;
string s;
int main()
{
ifstream f("cifra.in");
ofstream g("cifra.out");
f>>n;
for(int i=1; i<=n; i++)
{
f>>s;
sum=0;
if(s.size()==1)
z=0;
else
z=s[s.size()-2]-'0';
z++;
for(int j=1; j<=s[s.size()-1]-'0'; j++)
{
if(j==1)
sum+=z;
if(j==2 && z%2==1)
sum+=4;
if(j==3 && z%2==1)
sum+=7;
if(j==4)
sum+=(z*6)%10;
if(j==5)
sum+=(z*5)%10;
if(j==6)
sum+=(z*6)%10;
if(j==7 && z%2==1)
sum+=3;
if(j==8 && z%2==1)
sum+=6;
if(j==9)
sum+=(z*9)%10;
}
sum%=10;
z--;
for(int j=s[s.size()-1]-'0'+1; j<=9; j++)
{
if(j==1)
sum+=z;
if(j==2 && z%2==1)
sum+=4;
if(j==3 && z%2==1)
sum+=7;
if(j==4)
sum+=z*6;
if(j==5)
sum+=z*5;
if(j==6)
sum+=z*6;
if(j==7 && z%2==1)
sum+=3;
if(j==8 && z%2==1)
sum+=6;
if(j==9)
sum+=z*9;
}
sum%=10;
g<<sum<<"\n";
}
return 0;
}