Pagini recente » Cod sursa (job #158156) | Cod sursa (job #1376730) | Cod sursa (job #1796435) | Cod sursa (job #2469850) | Cod sursa (job #355001)
Cod sursa(job #355001)
#include<iostream>
using namespace std;
#include<fstream>
ifstream f("cifra.in");
ofstream g("cifra.out");
int t,cont1;
long int n,s;
int main () {
f>>t;
for (cont1=1;cont1<=t;cont1++)
{
f>>n;
if (n%10!=0 || n==10) {s=7*(n/10); // 1-10 = 47
if (n%10>=1) s+=1;
if (n%10>=2) {
if ((n/10+2)%4==1) s+=2;
if ((n/10+2)%4==2) s+=4;
if ((n/10+2)%4==3) s+=8;
if ((n/10+2)%4==0) s+=6;}
if (n%10>=3) {
if ((n/10+3)%4==1) s+=3;
if ((n/10+3)%4==2) s+=9;
if ((n/10+3)%4==3) s+=7;
if ((n/10+3)%4==0) s+=1;}
if (n%10>=4) {
if ((n/10+4)%2==1) s+=4;
if ((n/10+4)%2==0) s+=6;}
if (n%10>=5) s+=5;
if (n%10>=6) s+=6;
if (n%10>=7) {
if ((n/10+7)%4==1) s+=7;
if ((n/10+7)%4==2) s+=9;
if ((n/10+7)%4==3) s+=3;
if ((n/10+7)%4==0) s+=1;}
if (n%10>=8) {
if ((n/10+8)%4==1) s+=8;
if ((n/10+8)%4==2) s+=4;
if ((n/10+8)%4==3) s+=2;
if ((n/10+8)%4==0) s+=6;}
if (n%10>=9) {
if ((n/10+9)%2==1) s+=9;
if ((n/10+9)%2==0) s+=1;}
}
else {while (n%10==0) n/=10; s=7*n%10;}
g<<s%10<<endl;
}
f.close();g.close();
return 0;
}