Составить программу на 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;