请用程序实现
输入一个不多于五位的正整数 num
,并输出其位数,每一位的数字,以及逆序排列的每位数字。
示例:
输入
12345
输出
5
12345
54321
请用程序实现
输入一个不多于五位的正整数 num
,并输出其位数,每一位的数字,以及逆序排列的每位数字。
示例:
输入
12345
输出
5
12345
54321
import java.util.Scanner;
public class Program {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num=sc.nextInt();
int pa=0;
if(num<10){
pa=1;
}
if(num>=10&&num<100){
pa=2;
}
if(num>99&&num<1000){
pa=3;
}
if(num>999&&num<10000){
pa=4;
}
if(num>9999&&num<100000){
pa=5;
}
System.out.println(pa);
int qian,bai,shi,ge,wan;
wan=num/10000;
qian=(num-wan*10000)/1000;
bai=(num-wan*10000-qian*1000)/100;
shi=(num-wan*10000-qian*1000-bai*100)/10;
ge=num%10;
switch(pa)
{
case 5:
System.out.printf("%d%d%d%d%d\n",wan,qian,bai,shi,ge);
System.out.printf("%d%d%d%d%d",ge,shi,bai,qian,wan);
break;
case 4:
System.out.printf("%d%d%d%d\n",qian,bai,shi,ge);
System.out.printf("%d%d%d%d\n",ge,shi,bai,qian);
break;
case 3:
System.out.printf("%d%d%d%d%d\n",bai,shi,ge);
System.out.printf("%d%d%d\n",ge,shi,bai);
break;
case 2:
System.out.printf("%d%d\n",shi,ge);
System.out.printf("%d%d",ge,shi);
break;
case 1:
System.out.printf("%d\n",ge);
System.out.printf("%d",ge);
break;
}
}
}
这方法感觉不是很简便,有更简便的希望各位分享一下