#include <iostream>
using namespace std;
int inverse(int x) {
int reversed = 0;
while (x > 0) {
// 取 x 的最後一位數字,並將其加到 reversed 的當前值上,然後乘以 10 以便於下一次迭代
reversed = reversed * 10 + x % 10;
// 移除 x 的最後一位數字
x /= 10;
}
return reversed;
}
int main() {
int x = 3467;
int k = inverse(x);
cout << "Inverse of " << x << " is " << k << endl;
x = 2730;
k = inverse(x);
cout << "Inverse of " << x << " is " << k << endl;
return 0;
}
這個函式首先初始化一個名為 reversed 的變數來存儲反轉後的數字,初始值為 0。然後,它進入一個迴圈,每次迭代都將 x 的最後一位數字加到 reversed 上,並將 x 除以 10 以移除其最後一位數字。這個過程一直持續到 x 變為 0 為止。最後,reversed 變數就是 x 的數字反轉後的結果。
請注意,這個實現方式也適用於非四位數的正整數,只要輸入的是一個正整數即可。