SWPDGT problem

can someone please tell me what is the error in this code

#include
using namespace std;
int maximum(int x,int y,int z,int w)
{
if(x>=y && x>=z && x>=w)
return x;

else if(y>=x && y>=z && y>=w)
return y;

else if(z>=y && z>=x && z>=w)
return z;

else
return w;

}

int main()
{
int t,i,a,b,n,p,q,r,s,sum,m1,m2,m3,m4;
cin>>n;
while(n–)
{
cin>>a>>b;

if(a<10 && b<10)
{
    sum=a+b;
    cout<<sum;
}

else if(a<10 && b>10)
{
    if(b/10<a)
    {
        a=a*10+b%10;
        b=b/10;
        sum=a+b;
        cout<<sum<<endl;
    }
    
    else
    {
        sum=a+b;
        cout<<sum<<endl;
    }
}


else if(b<10 && a>10)
{
    if(a/10<b)
    {
        b=b*10+a%10;
        a=a/10;
        sum=a+b;
        cout<<sum<<endl;
 
    }
    
    else
    {
        sum=a+b;
        cout<<sum;
        cout<<endl;
    }
}

else
 {
     p=a%10;
     q=a/10;
     r=b%10;
     s=b/10;
     m1=q*10+p+s*10+r;
     m2=q*10+s+p*10+r;
     m3=q*10+r+s*10+p;
     m4=r*10+p+s*10+q;
     
     sum=maximum(m1,m2,m3,m4);
     
     cout<<sum<<endl;
 }
}
    return 0;

}