Pagini recente » Cod sursa (job #1960070) | Cod sursa (job #2926150) | Cod sursa (job #2769087) | Cod sursa (job #2777195) | Cod sursa (job #373305)
Cod sursa(job #373305)
#include <fstream>
using namespace std;
int T,uc,u1;
char s[127];
int main()
{
ifstream fin("cifra.in");
ofstream fout("cifra.out");
fin>>T;
while (T--)
{ long U; int nc;
fin>>s; int l=strlen(s);
uc=s[l-1]-'0';
if (l>1)
{u1=s[l-2]-'0';}
else {u1=0;}
U=(u1+(uc>0?1:0))%10; //1
//5
nc=u1+(uc>4?1:0);
if (nc%2==1)U=(U+5)%10;
//6
nc=u1+(uc>5?1:0);
U=(U+(nc*6))%10;
//4
nc=u1+(uc>3?1:0);
U=(U+(nc*6))%10;
//8
nc=u1+(uc>7?1:0);
if (nc%2==1) U=(U+6)%10;
//9
nc=u1+(uc>8?1:0);
U=(U+(nc*9))%10;
//2
nc=u1+(uc>1?1:0);
if (nc%2==1) U=(U+4)%10; //altfel U+=0;
//3
nc=u1+(uc>2?1:0);
if (nc%2==1) U=(U+7)%10; //alfel U+=0
//7
nc=u1+(uc>6?1:0);
if (nc%2==1) U=(U+3)%10; //alfel U+=0
fout<<U%10<<"\n";
}
fin.close(); fout.close();
return 0;
}