Am nevoie de putin ajutor la aceasta problema.

#include <iostream>
using namespace std;
short a, b, p1, p2, rastp2;
int main()
{
cout << "numerele solicitate: ";
for (a=11; a<100; ++a)
{
b=(a%10)*10+(a/10);
p1=a*a; p2=b*b;
rastp2=0;
while (p2)
{
rastp2=rastp2*10+p2%10;
p2=p2/10;
}
if (rastp2==p1) cout << a << " ";
}
}