編寫一個Java應用程序,用戶從鍵盤輸入一個1~9999之間的數,程序將判斷這個數是幾位數,並判斷這個數是否是迴文數。迴文數是指將該數含有的數字逆序排列後得到的數和原數相同,例如12121、3223都是迴文數。
import javax.swing.JOptionPane;
public class test1
{
public static void main(String args[])
{
loopNumber();
}
static void loopNumber(){
int number=0,d5,d4,d3,d2,d1;
String str=JOptionPane.showInputDialog("輸入一個1至99999之間的數");
number=Integer.parseInt(str);
if(number>=1&&number<=99999) //判斷number在1至99999之間的條件
{
d5=number/10000;//計算number的最高位(萬位)d5
d4=number%10000/1000;//計算number的千位d4
d3=number%10000%1000/100;//計算number的百位d3
d2=number%100/10;
d1=number%10;
if(d5>0) //判斷number是5位數的條件
{
System.out.println(number+"是5位數");
if(d5==d1&&d4==d2) //判斷number是迴文數的條件
{
System.out.println(number+"是迴文數");
}
else
{
System.out.println(number+"不是迴文數");
}
}
else if(d5==0&&d4>0) //判斷number是4位數的條件
{
System.out.println(number+"是4位數");
if(d4==d1&&d3==d2) //判斷number是迴文數的條件碼
{
System.out.println(number+"是迴文數");
}
else
{
System.out.println(number+"不是迴文數");
}
}
else if(d5==0&&d4==0&&d3>0) //判斷number是3位數的條件
{
System.out.println(number+"是3位數");
if(d3==d1) //判斷number是迴文數的條件
{
System.out.println(number+"是迴文數");
}
else
{
System.out.println(number+"不是迴文數");
}
}
else if(d2!=0)
{
System.out.println(number+"是2位數");
if(d1==d2)
{
System.out.println(number+"是迴文數");
}
else
{
System.out.println(number+"不是迴文數");
}
}
else if(d1!=0)
{
System.out.println(number+"是1位數");
System.out.println(number+"是迴文數");
}
}
else
{
System.out.printf("\n%d不在1至99999之間",number);
}
}
}
輸出結果:
12321是5位數
12321是迴文數
經驗總結:
第一次用到了JAVA中的包,開始導包啦!