Cod sursa(job #1425531)

Utilizator demetriad-dagpagDavid Demetriad demetriad-dagpag Data 27 aprilie 2015 16:50:58
Problema Cifra Scor 0
Compilator c Status done
Runda Arhiva de probleme Marime 1.05 kb
#include <stdio.h>
#include <stdlib.h>
int functie(int n)
{
    int i,s,z;
    s=0;
    for(i=1; i<=n; i++)
    {
        z=i%10;
        if(z==0 || z==6 || z==5 || z==1)
            s+=z;
        else
            if(z==4 || z==9){
                if(i%2==1)
                    s+=z;
                else
                    s=s+(z+2)%10;
            }
            else
                switch(i%4)
                {
                    case 1: s+=z; break;
                    case 2: s=s+(z*z)%10; break;
                    case 3: s=s+(z*z*z)%10; break;
                    case 4: s=s+(z*z*z*z)%10; break;
                }
        s%=10;
    }
    return s;
}
int main()
{
    int i,t,x1,x2,x3;
    freopen("cifra.in","r",stdin);
    freopen("cifra.out","w",stdout);
    scanf("%d",&t);
    getchar();
    for(i=1; i<=t; i++)
    {
        x1=0;
        x2=0;
        x3=getchar()-'0';
        while(x3>=0 && x3<=9)
        {
            x1=x2;
            x2=x3;
            x3=getchar()-'0';
        }
        printf("%d\n",functie(x1*10+x2));
    }

    return 0;
}