public class Test {
public static void main(String[] args) {
// TODO Auto-generated method stub
for(int n=1000;n<10000;n++) {
int i=n;
int a=i/1000;
int e=10*a;
int b=i/100 -e;
e = 10*(e+b);
int c=i/10 -e;
e = 100*(e+b+c);
int d=i -e;
if(a==d && b==c) {
System.out.println(n);
}
}
}
}
修改如下:
public class Test {
public static void main(String args[]) {
for(int n=1000;n<10000;n++) {
int i=n;
int a=i/1000;
int b=i/100%10;
int c=i/10%10;
int d=i %10;
if(a==d && b==c) {
System.out.println(n);
}
}
}
}
你的逻辑是什么……
你还是把每个数输出一下看是否符合你的逻辑吧。
也可以转成字符串判断
public class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个数:");
int x = sc.nextInt();
String num = String.valueOf(x);
String reverse = new StringBuffer(num).reverse().toString(); //字符串反转
if (reverse.equals(num)) {
System.out.println("true:回文数");
} else {
System.out.println("false");
}
}
}