回文数,即正反读都是相同的数,如1221、12321等。

【分析】:
分三种情况讨论:

  • 1-9范围 一定是回文数,直接输出即可;
  • 10-99范围,当个位数与十位数都相同,就是回文数;
  • 100-999范围 当个位数与百位数都相同,就是回文数;

C++代码实现:

/*
2、用除法与取余结合获取个十百位数;
3、用if判断,只要位数相等,就是回文数输出。 
*/ 
#include<iostream>
using namespace std;
int main() {
	int sum = 0; 
	for(int i=1;i<1000;i++){
		if(i<10){
			cout<<i<<endl;
			sum++;
		} 
		else
		if(i>=10 && i<100){
			int ge,shi;
			if(i%10 == i/10){
				cout<<i<<endl;
				sum++;
			}
		} 
		else{
			if(i%10 == i/100){
				cout<<i<<endl;
				sum++;
			}
		} 
	}
	cout<<"1-999总共有"<<sum<<"个回文数";
	return 0;
} 

在这里插入图片描述


Python代码实现:

sum_1 = 0
for i in range(1,1001):
     a = str(i)      # 把 整型 i变量转为字符串格式赋给变量a
     b = a[::-1]    # 获取变量a 顺序相反的数,(a=104 => b=401)
     if a==b:       # 只要a等于b的值,就是回文数
          print(i)
          sum_1 += 1 # 统计回文数多少
print("1-999总共有%d个回文数" % sum_1)

在这里插入图片描述

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐