长整形个位数相加(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,写程序是要在电脑上跑的,不是看书就有用的,望新学者不要怕在电脑上动手写。。。

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