Java之判斷迴文數__Java

來源:互聯網
上載者:User

實驗代碼:

/** 程式的著作權和版本聲明部分* Copyright (c) 2011, 煙台大學電腦學院學生 * All rights reserved.* 檔案名稱:  TestNumber.java                            * 作    者:  張宗佳                          * 完成日期:  2012 年 9 月 16 日* 版 本 號:  v1.0        * 對任務及求解方法的描述部分* 問題描述:編寫一個Java應用程式,使用者從鍵盤輸入一個1~9999之間的數,程式將判斷這個*數是幾位元,並判斷這個數是否是迴文數。迴文數是指將該數含有的數字逆序排列後得到的數*和原數相同,例如12121、3223都迴文數。代碼附後。* 演算法說明:* 程式頭部的注釋結束*/import javax.swing.JOptionPane;public class TestNumber{      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 / 1000 % 10;//計算number的千位d4            d3 = number % 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(d1 == d4 && d2 == d3) //判斷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(d1 == d3) //判斷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);            }    }}

實驗結果:


1221是4位元
1221是迴文數

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.