目录

函数功能

思路

具体步骤

变量初始化

循环条件

反序数计算

返回值

示例说明

注意事项

C C++通用代码

Python代码


函数功能

        该函数用于计算一个整数的反序数,常用于判断对称性或者反序的场景

例如,输入 123,输出 321;输入 -123,输出 -321

思路
  • 假设输入为x;反序为revx,revx初始为0
  • 取x的个位数(x%10)加到revx(每次循环revx要先*10再加
  • 将当前x的个位数去掉(x/10),成为新x
  • 循环上述操作,直到x为0

具体步骤
变量初始化

        定义变量 revx 并初始化为 0,用于存储最终的反序数结果。

循环条件

        使用 while 循环,条件是输入的整数 x 不等于 0。循环会持续执行,直到 x 的所有位数被处理完毕。

反序数计算

        在循环体内,每次迭代执行以下操作:

  • revx *= 10:将 revx 左移一位,为新的个位数腾出空间。
  • revx += x % 10:取 x 的个位数,并加到 revx 的末尾。
  • x /= 10:将 x 右移一位,去掉已经处理过的个位数。
返回值

        循环结束后,返回计算得到的反序数 revx

示例说明

以输入 123 为例:

  1. 初始时 revx = 0x = 123
  2. 第一次循环:
    • revx = 0 * 10 + 3 = 3
    • x = 123 / 10 = 12
  3. 第二次循环:
    • revx = 3 * 10 + 2 = 32
    • x = 12 / 10 = 1
  4. 第三次循环:
    • revx = 32 * 10 + 1 = 321
    • x = 1 / 10 = 0
  5. 循环结束,返回 321
注意事项

        该函数未显式处理负数情况,但实际测试中,负数也能正确计算反序数。例如,输入 -123 时:

  • 取模运算 x % 10 会得到负的个位数(如 -3)。
  • 最终结果 revx 会自然累积为负数(如 -321)。
C C++通用代码
int Reverse(int x) { //求反序数
    int revx = 0;
    while (x != 0) {
        revx *= 10;
        revx += x % 10;
        x /= 10;
    }
    return revx;
}
Python代码
def reverse(x):
    revx = 0
    while x != 0:
        revx *= 10
        revx += x % 10
        x = x // 10
    return revx
 

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐