Cod sursa(job #1769819)

Utilizator papinub2Papa Valentin papinub2 Data 3 octombrie 2016 11:12:25
Problema Cifra Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.07 kb
#include <fstream>

using namespace std;

ifstream in("cifra.in");
ofstream out("cifra.out");



int ultima_cifra(int x)
{
    int v[10]={0, 1, 4, 7, 6, 5, 6, 3, 6, 1};
    int k, nr=0, S=0, z, r;
    k=x;
    while (k)
    {
        k=k/10;
        nr++;
    }
    if (nr==1)
    {
        if (x>9)
        {
            for (int i=1; i<=9; i++)
            S=S+v[i];
        }

        else

        {
            for (int i=1; i<=x; i++)
            S=S+v[i];
        }
    }
        else
        {
             if (x>9)
        {
            for (int i=1; i<=9; i++)
            S=S+v[i];
        }
            else

        {
            for (int i=1; i<=x; i++)
            S=S+v[i];
        }

            z=x/9;
            r=x%9;
            if (z!=0)
                  S=S*z;
            for (int i=1; i<=r; i++)
                S=S+v[i];
        }
    return S%10;
}

int main ()
{
    int n, i, S, x;
    in>>n;

    for (i=1; i<=n; i++)
    {
        in>>x;
        out<<ultima_cifra(x)<<endl;
    }
    return 0;
}