Cod sursa(job #1073734)

Utilizator MyrmekoMeMarin Cristian MyrmekoMe Data 6 ianuarie 2014 19:25:35
Problema Cifra Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.63 kb
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

char c[101], p[101];

int main()
{
    FILE *f, *g;
    static int fx[101],i,j,n,nr;

    for (i = 1; i <= 100; i++)
    {
        if (i < 10)
        {
            switch (i % 10)
            {
                case 1:
                    nr += 1;
                break;

                case 2:
                    nr += 4;
                break;

                case 3:
                    nr += 7;
                break;

                case 4:
                    nr += 6;
                break;

                case 5:
                    nr += 5;
                break;

                case 6:
                    nr += 6;
                break;

                case 7:
                    nr += 3;
                break;

                case 8:
                    nr += 6;
                break;

                case 9:
                    nr += 9;
                break;

            }

        }

        if (i > 10)
        {
            n = i % 10;
            for (j = 2; j <= i; j++)
                n = (n * i) % 10;
            nr += n;
        }

        if (nr >= 10)
            nr = nr % 10;

        fx[i] = nr;

    }

    f = fopen("cifra.in","rt");
    g = fopen("cifra.out","wr");
    n = 0;
    fscanf(f,"%d",&n);

    for (i = 1; i <= n; i++)
    {
        fscanf(f,"%s", &c);

        if (strlen(c) > 2)
            strcpy(p, c + (strlen(c) - 2));
        else
            strcpy(p, c);

        fprintf(g,"%d\n", fx[atoi(p)]);
    }

    fclose(f);
    fclose(g);

    return 0;
}