咋做啊 麻木了啊!帮帮我!

输入一个整数,你的任务是计算并输出这个整数的反数。反数的定义如下:
1.结尾非0的正整数的反数就是般的取反概念: 12的反数为21
2.负数的反数仍然是负数: -12的反数为-21
3.结尾为0的正整数的反数为: 1200的反数为2100


// X0 为输入的数
// Y 为输出的数

#include <iostream>
#include <cmath>
using namespace std;
void main()
{
    cout << "输入一个数:" << endl;
    int X0;
    int Y = 0;
    cin >> X0;
    
    
    int X = abs(X0);
    for (; 1; )
    {
        if (X % 10 == 0)
            X /= 10;
        else
            break;
     }

    int X_temp = X;

    for (; X; )
    {
        Y = Y * 10 + (X % 10);
        X = X / 10;
    }

    Y *= (X0 / X_temp);
    cout << "input:   "<< X0 << "\noutput:   " << Y << endl;
    
}

img

img

img