21xrx.com
2024-09-19 23:55:07 Thursday
登录
文章检索 我的文章 写文章
C++判断输入整数是否为回文数
2023-07-05 02:21:45 深夜i     --     --
C++ 判断 输入 整数 回文数

在计算机编程中,我们经常需要判断一个整数是否为回文数。一个回文数是指数字从左到右和从右到左读都是相同的数字。例如,121、2332、45554都是回文数。

下面是一个使用C++编写程序,判断输入整数是否为回文数的方法:

1. 提取每一位数字

将输入整数按照从个位数到最高位数的顺序,从低位到高位逐个提取每一位数字。使用取模运算(%)和除法运算(/),可以得到每一位数字。

例如,对于整数12321,我们首先取模10,得到其个位数字1,然后将其除以10,得到1232,然后再取模10,得到十位数字2,以此类推。

2. 比较数字

将提取出的整数数字,从最高位数字开始两两比较,直到比较到中间位置的数字。如果所有位数字都相同,则输入整数就是回文数。

例如,对于整数2332,我们首先比较最高位和最低位数字2和2,然后比较次高位和次低位数字3和3,由于所有位数字都相同,因此输入整数2332就是回文数。

下面是一段使用C++编写的程序代码,实现判断输入整数是否为回文数的功能:


#include <iostream>

using namespace std;

int main()

{

  int n, m, t; // n表示输入整数,m表示反转后的整数,t表示每一位数字

  m = 0; // 初始化反转后的整数为0

  cin >> n; // 输入需要判断的整数

  t = n; // 从最低位开始提取每一位数字

  while (t > 0) {

    m = m * 10 + t % 10; // 将提取出的数字反转并保存到m变量中

    t /= 10;

  }

  if (n == m)

    cout << n << "是回文数" << endl; // 判断是否为回文数

   else

    cout << n << "不是回文数" << endl;

  

  return 0;

}

通过以上代码,我们可以判断输入整数是否为回文数。可以通过输入不同的整数进行测试,得到相应的结果。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复