Pagini recente » Cod sursa (job #494037) | Cod sursa (job #2450849) | Cod sursa (job #1909097) | Cod sursa (job #1407568) | Cod sursa (job #305979)
Cod sursa(job #305979)
#include<fstream>
using namespace std;
int x[] = {0,1,5,2,8,3,9,2,8,7};
int y[] = {0,1,7,0,6,1,7,4,8,9};
char a[200];
int sir[200],i,j,w,t,n,r;
int main()
{
ifstream f("cifra.in");
ofstream g("cifra.out");
f>>t;
f.get();
for(w=1;w<=t;w++)
{
r=0;
f.getline(a,200);
n=strlen(a);
if(n>=2)
{
if((a[n-2]-'0')%2==0)
{
r+=7*((a[n-2]-'0')/2);
r+=9*((a[n-2]-'0')/2);
}
if((a[n-2]-'0')%2==1)
{
r+=7*((a[n-2]-'0')/2+1);
r+=9*((a[n-2]-'0')/2);
}
}
if((a[n-2]-'0')%2==0)
r+=x[a[n-1]-'0'];
else
r+=y[a[n-1]-'0'];
//for(;i<=n-1;i++)
g<<r%10;
g<<'\n';
}
f.close();
g.close();
return 0;
}
/*
fill(sir,sir+n+1,0);
for(i=0;i<n-1;i++)
{
sir[i+1]=(a[i]-'0')*r;
j=i+1;
while(sir[j]>9)
{
sir[j-1]+=sir[j]/10;
sir[j]%=10;
j--;
}
}
sir[n-1]+=x[a[n-1]-'0'];
j=n-1;
while(sir[j]>9)
{
sir[j-1]+=sir[j]/10;
sir[j]%=10;
j--;
}
i=1;
if(sir[0])
i=0;
*/