版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u014543872/article/details/84193299
题目描述
一个正整数,如果从左向 右读(称之为正序数)和从右向左读(称之为倒序数)是一样的,这样的数就叫回文数。输入两个整数m和n(m<n),输出区间[m,n]之间的回文数。
输入
输入两个正整数m和n,输入保证m<n。
输出
按从小到大的顺序,输出m到n之间的回文数,每个数后面有一个空格。
样例输入
100 200
样例输出
101 111 121 131 141 151 161 171 181 191
import java.util.Scanner;
public class Main {
public static int inverse(int n){
int num=0;
while (n>0){
num=num*10+n%10;
n/=10;
}
return num;
}
public static void main(String[] args)
{
Scanner input=new Scanner(System.in);
int m=input.nextInt();
int n=input.nextInt();
for (int i=m;i<=n;i++){
if(i==Main.inverse(i)){
System.out.print(i+" ");
}
}
}
}
基础练习 回文数
问题描述
1221是一个非常特殊的数,它从左边读和从右边读是一样的,编程求所有这样的四位十进制数。
输出格式
按从小到大的顺序输出满足条件的四位十进制数。
public class Main {
public static void main(String[] args) {
for (int i = 1; i <= 9; i++) { //千位 不能为零
for (int j = 0; j <= 9; j++) { //百位
for (int m = 0; m <= 9; m++) { //十位
for (int n = 0; n <= 9; n++) { // 个位
if (i == n && j == m) {
System.out.printf("%d%d%d%d\n", i, j, m, n);
}
}
}
}
}
}
}
基础练习 特殊回文数
问题描述
123321是一个非常特殊的数,它从左边读和从右边读是一样的。
输入一个正整数n, 编程求所有这样的五位和六位十进制数,满足各位数字之和等于n 。
输入格式
输入一行,包含一个正整数n。
输出格式
按从小到大的顺序输出满足条件的整数,每个整数占一行。
样例输入
52
样例输出
899998
989989
998899
数据规模和约定
1<=n<=54。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
int n=input.nextInt();
//n为五位数时、
for (int a=1;a<=9;a++){ //万位 且不能为零
for(int b=0;b<=9;b++){ //千位
for(int c=0;c<=9;c++){ //百位
for (int d=0;d<=9;d++) { //十位
for (int e=0;e<=9;e++){ //个位
if((a+b+c+d+e)==n&&a==e&&b==d){
System.out.printf("%d%d%d%d%d\n", a, b, c, d,e);
}
}
}
}
}
}
//n为六位数时、
for (int a=1;a<=9;a++){ //十万位 且不能为零
for(int b=0;b<=9;b++){ //万位
for(int c=0;c<=9;c++){ //千位
for (int d=0;d<=9;d++) { //百位
for (int e=0;e<=9;e++){ //十位
for (int f=0;f<=9;f++) { //个位
if ((a + b + c + d + e+f) == n && a == f && b == e&&c==d) {
System.out.printf("%d%d%d%d%d%d\n", a, b, c, d, e,f);
}
}
}
}
}
}
}
}
}