Cod sursa(job #1066122)

Utilizator olly2204Olly2204 olly2204 Data 24 decembrie 2013 00:38:08
Problema Cifra Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.02 kb
//#include "stdafx.h"
//#include "LastDigit.h"

#include <fstream>
#include <iostream>

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

char GetLastDigitOfPower(int base, int power);
char GetLastDigitOfSequence(int number);

int main()
{
    int inputsCount = 0;
    in >> inputsCount;

    while (inputsCount > 0) 
    {
        long long number;
        in >> number;

        int result = GetLastDigitOfSequence(number);
        out << result << "\n";

        inputsCount--;
    }

    return 0;
}

char GetLastDigitOfSequence(long long maxNumber)
{
    char digit = 0;
    char lastDigit;
    for (long long number = 1; number <= maxNumber; number++)
    {
        lastDigit = GetLastDigitOfPower(number, number);
        digit = (digit + lastDigit) % 10;
    }
    return digit;
}

char GetLastDigitOfPower(long long base, long long power)
{
    char digit = 1;
    while(power > 0)
    {
        digit = (digit * base ) % 10;
        power--;
    }
    return digit;
}