上海计算机学会2021年12月月赛C++丙组T1回文数的判定

本文详细解释了如何用C++编写代码检测一个正整数是否为回文数,涉及取模和累加操作。
题目描述

给定一个正整数 n,请判定它是否是一个回文数,所谓回文数,就是将这个数的所有数字倒序排列后这个数的大小保持不变,比如 101101 与 68866886 都是回文数,而 100100 不是回文数。

输入格式

单个正整数:表示给定的数字

输出格式
  • 如果输入是一个回文数,输出 Palindromic Number
  • 否则,输出 Non-Palindromic Number
数据范围
  • 对于 100%100% 的数据,1≤n≤10,000,0001≤n≤10,000,000。

限制要求

内存限制: 256 Mb时间限制: 1000 ms

样例数据

输入:

1001

输出:

Palindromic Number

输入:

8848

输出: 

Non-Palindromic Number

解析

每次取模,从后往前乘10加模进行累加,代码如下:

#include <iostream>
using namespace std;
int main(){
	int n,m,total;
	total=0;
	cin>>n;
	m=n;
	while(m>0){
		total=total*10+m%10;
		m=m/10;
	}
	if(total==n){
		cout<<"Palindromic Number"<<endl;
	}else{
		cout<<"Non-Palindromic Number"<<endl;
	}
	return 0;
}

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

全栈工程师Linda

感恩您的鼓励,我会继续创作作品

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值