Witam
Jak w temacie, mam taki kod:
#include <iostream>
#include <math.h>
#include <string>
using namespace std;
int X,Y,Z,a,b;
int main()
{
cin >> X;
for(int i=1;i<=X;i++)
{
cin >> Y >> Z;
a = pow(Y,Z);
std::string String = std::to_string(a);
cout << String[String.length()-1] << endl;
}
return 0;
}
Na początku to wklepałem, i wydawało mi się ,że wszystko gra. Jednak po kilku testach wynik wychodzi źle - zauważyłem że co mam w cout << String[String.length()-1]; odejmuje 1 od wyniku. Z ta minus 1 chodziło mi bardziej o jedną literkę mniej w tym stringu, no bo liczę od zera. Jakiś pomysł jak to rozwiązać? Gdyby jakiś stary wyjadacz zobaczył jakiś błąd logiczny, to bardziej proszę o jakąś wskazówkę, nie gotowy kod lub polecenie co i jak dokładnie zrobić :D