第二週JAVA上機實驗(二)判斷這個數是幾位數、是否是迴文數

編寫一個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中的包,開始導包啦!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章