在相同的输入线上添加3个整数

时间:2016-03-21 03:56:31

标签: java

我又被一个程序卡住了。

 public int sumNumber(int a , int b, int c)
{
 int line = a+b+c;
 return line;
 }
public int sumNumber (int b , int c )
{

    int total = b +c;


    return total;

}

public static void main(String[] args) {
    Scanner in = new Scanner (System.in);
    Assignment12 a12 = new Assignment12();
    int y = a12.sumNumber(1, 2, 3);
    System.out.println("Enter two three-digit numbers");
    int num1 = in.nextInt(y),     num2 = in.nextInt(y);
    int  x = a12.sumNumber(0, 1);

    System.out.println("The sum of the digits is : "+ y );

我想添加我输入的数字,然后添加第二组。 输出应该是什么样的:

Enter two three-digit numbers
  521
  412
  sum  = 15

澄清发生了什么:

Enter 2 three digit numbers
 5+2+1 = 8
 4+1+2 = 7
then it adds 8 and 7

 sum = 15

我故意超载.....加上你们可以尽可能保持简单(我还在学习)

3 个答案:

答案 0 :(得分:1)

我认为你可以这样修改你的功能:

public int sumNumber (int b , int c )
{   
       int sum =0;

       while(b!=0){
            sum += b%10;
            b = b/10;
         }
       b =sum;

       while(c!=0){
           sum += c%10;
           c = c/10;
         }

       c= sum;

        int total = b +c;


       return total;

}

我不确定你对这门课程的要求。但是你可以定义一个这样的函数:

int digitSum(int x){

             int sum=0;

           while(x!=0){
                sum += x%10;
                x = x/10;
             }

       return sum;
 }

您可以调用此函数,它将为您提供所有数字的总和。

答案 1 :(得分:1)

使用两种方法而不是一种

  • 一个数字总和

  • Number Number的第二个

数字总和 -

public int digitSum(int a)
{
     int sum=0;
     while(a!=0)       //while(a)
    {
       sum += a%10;
       a /= 10;
     }
    return sum;
 }

数字总和

public int sum(int a,int b)
{
    // You can Get Digits Sum Here or Before any Where by just calling above method

 return digitSum(a)+digitSum(b); 
}

答案 2 :(得分:0)

...
int []numbers;
int sum=0;
String firstNumber = scan.next();
String secondNumber = scan.next();
numbers = Integer.parseInt(firstNumber.split("[0-9]"));
for(int add:numbers)
   sum+=numbers;
numbers = Integer.parseInt(secondNumber.split("[0-9]"));
for(int add:numbers)
   sum+=numbers;
System.out.println("Sum = "+ sum);
...

一个非常脏的程序,但应该可以工作