Pagini recente » Cod sursa (job #3151760) | Cod sursa (job #2809847) | Cod sursa (job #1663278) | Cod sursa (job #131716) | Cod sursa (job #136638)
Cod sursa(job #136638)
#include <stdio.h>
#include <math.h>
int putere(int pn);
FILE* f;
FILE* s;
int t;
int n;
int main()
{
f=fopen ("cifra.in","r");
s=fopen ("cifra.out","w");
fscanf (f,"%ld\n",&t);
for (int i=0;i<t;i++)
{
fscanf (f,"%d\n",&n);
n=n%100;
int suma=0;
for (int j=1;j<=n;j++)
suma+=putere(j);
fprintf (s,"%d\n",suma%10);
}
fclose (f);
fclose (s);
return 0;
}
int putere(int pn)
{
int numar=pn;
int ultima=numar%10;
int rezultat;
switch (ultima)
{
case 0: rezultat=0;
break;
case 1: rezultat=1;
break;
case 2: switch(numar%4)
{
case 0: rezultat=6;
break;
case 1: rezultat=2;
break;
case 2: rezultat=4;
break;
case 3: rezultat=8;
break;
}
break;
case 3: switch(numar%4)
{
case 0: rezultat=1;
break;
case 1: rezultat=3;
break;
case 2: rezultat=9;
break;
case 3: rezultat=7;
break;
}
break;
case 4: switch(numar%2)
{
case 0: rezultat=6;
break;
case 1: rezultat=4;
break;
}
break;
case 5: rezultat=5;
break;
case 6: rezultat=6;
break;
case 7: switch(numar%4)
{
case 0: rezultat=1;
break;
case 1: rezultat=7;
break;
case 2: rezultat=9;
break;
case 3: rezultat=3;
break;
}
break;
case 8: switch(numar%4)
{
case 0: rezultat=6;
break;
case 1: rezultat=8;
break;
case 2: rezultat=4;
break;
case 3: rezultat=2;
break;
}
break;
case 9: switch(numar%2)
{
case 0: rezultat=1;
break;
case 1: rezultat=9;
break;
}
break;
}
return rezultat;
}