Python C++ 实现 输出1-1000以内的回文数
回文数,即正反读都是相同的数,如1221、12321等。【分析】:分三种情况讨论:1-9范围 一定是回文数,直接输出即可;10-99范围,当个位数与十位数都相同,就是回文数;100-999范围 当个位数与百位数都相同,就是回文数;C++代码实现:/*2、用除法与取余结合获取个十百位数;3、用if判断,只要位数相等,就是回文数输出。*/#include<iostream>using na
·
回文数,即正反读都是相同的数,如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)
更多推荐
已为社区贡献7条内容
所有评论(0)