長整形個位數相加(Java實現)

    最近表妹剛學Java,佈置的課後作業,幫她小做了下,希望對新學Java的人有所幫助也。。。

    題目:要求長整形數個位數相加得到結果!

下面是第一種方法:
public static void main(String[] args) {//這道題無非考你如何使用求餘、求模。求餘、求模有何區別
  long aa=99909;  //此處爲你要求和的長整型,你可以隨意改變數值!
  System.out.println("原數據爲:"+aa);
  int cc=0;
  int bb=0;
  int i=1; //i只是用來記錄被加到了第幾位了!
  for(bb=(int)(aa%10);aa>0;aa=aa/10){ //其中aa是的到求模後的結果
   System.out.println("第"+i+"位被加上");//是從個位開始向上加的
   cc+=aa%10; //此處爲求餘
   i++;
  }
  System.out.println("相加後得:"+cc);
}
 
接下來是第二種方法:
public static void main(String[] args) {
  long aa=99909;  //這道題無非考你如何使用求餘、求模。求餘、求模有何區別
  System.out.println("原數據爲:"+aa);
  int cc=0;
  int bb=0;
  int i=1;
while(aa>0){    //這是使用while語句,寫兩種是讓你看下這裏面的區別與共同
//其實while與for實現的功能是一樣的
//就是看你個人喜歡,有時使用while語句非常方便,有時使用for語句非常方便,這要看具體情況而定
//但二者功能是基本一樣的
   System.out.println("第"+i+"位被加上");
   bb=(int)(aa%10);
   cc+=aa%10;
   aa=aa/10;
   i++;
  }
  System.out.println("相加後得:"+cc);
 }

 

 

其實兩種方法沒什麼區別,就是讓新手有個對比!學習Java,寫程序是要在電腦上跑的,不是看書就有用的,望新學者不要怕在電腦上動手寫。。。

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