Составить программу на C++ с циклом while

Задание звучит так: вводить число с клавиатуры, диапазон от 1 до 10000000, и сделать так если сума левой части числа не равна суме правой части числа, то поменять их местами. Тоесть разделить число на две части, найти суммы этих частей и условие поменять местами набросок есть но он не совсем так как надо и на него опиратся не надо

int n, z, parts, x, l,r, sum1=0, sum2=0;
 cout<<"Input [1, 1000000] x = ";
cin>>x;
z=x;
 n=0;
while (z > 0) {
    n++;
    z /= 10;}
parts= n / 2;
l= x / (pow(10, parts));
r= x % ((int)pow(10, parts));
n=0;
if(l!=r)
{cout<<"a =  "<<r<<"b=   "<<l<<endl;}
else
 cout<<"a =  "<<l<<"b=   "<<r<<endl;

Ответы (0 шт):