Cod sursa(job #2342975)

Utilizator BovisioNitica Ionut Bogdan Bovisio Data 13 februarie 2019 16:18:53
Problema Cifra Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.73 kb
#include <cstdio>

using namespace std;

int ucifra(int x,int p,int v[])
{
    int u=1;
    if(p > v[x])
        p = p % v[x] + 1;
    if(p >= v[x])
        p=1;
    for(int i=1;i<=p;i++)
        u = u*x;
    return u%10;
}

int main()
{
    FILE *f = fopen("cifra.in","r");
    FILE *g = fopen("cifra.out","w");
    if(f == NULL)
    {
        printf("Eroare la deschidere!");
        return 0;
    }

    int rep[10] = {0,1,5,5,3,1,1,5,5,3};
    int n,sum=0,t;

    fscanf(f,"%d",&n);
    for(int i=0;i<n;i++)
    {
        fscanf(f,"%d",&t);
        sum = 0;
        for(int i=1;i<=t;i++)
        {
            sum += ucifra(i,i,rep);
        }
        fprintf(g,"%d\n",sum%10);
    }

    return 0;
}