Witam robię zadanie w którym należy spotęgować 2 liczby a następnie wypisać ostanią liczbe z sumy(?) potęgowania.
Użyłem do tego funcji pow() z biblioteki math.h, jednak coś szwankuje i przy danych np. 10 2 wynik to 99. Oto kod:
#include <iostream>
#include <math.h>
using namespace std;
int main()
{
int n;
cin>>n;
if (n<1||n>10)
return 0;
for(int i=0; i<n; i++)
{
long long a,b,pot,c=0;
cin>>a>>b;
pot = pow(a,b);
cout<<pot<<endl;
if(pot%10==0)
{
cout<<c<<endl;
continue;
}
while (pot>0)
{
c*=10;
c+=(pot%10);
pot/=10;
}
string napis = to_string(c);
napis.erase(1);
cout<<napis<<endl;
}
return 0;
}
A to przykładowe dane wejściowe i dziwne wyniki w konsoli: