2016-01-20 35 views
-4

我想我的程序从数字输入中获得所有的偶数位。然后将数字与数字相乘2.如果结果是两位数字,请添加它们。最后,我想让它给我所有的偶数位的总和。 公共类evenplaceadd {我怎样才能得到从一个数字在java中的位数

public static void main(String[] args) { 

    System.out.println(sumOfevenPlace(5566)); 
} 
public static int sumOfevenPlace(int number) 
{ 
    int maxDigitLength = 4; 
    int sum = 0; 
    for (int i = 0; i < maxDigitLength; i++) 
    { 
     if (i % 2 == 0) 
     { 
      int digita = number % 10; 
      int digitb =digita*2; 
      int digitc; 

      if(digita < 9) 
      { 
       sum = sum + digitb; 
      } 
      else if(digitb>9) 
      { 
       digitc =(digitb % 10)+ (digitb /10); 
       sum =sum + digitc; 
      } 

     } 
     else 
     { 
      number = number/10; 
     } 

    } 
    return sum; 

}

}

+5

你有没有尝试过什么呢?你能否至少让我们觉得我们没有做你的功课? –

+0

这样一个巨魔的问题,以及你要求的语法没有意义。 –

+0

请提供迄今为止您所拥有的任何代码,我们可以帮助您从中找出答案。我们不喜欢回答作业。这似乎是这是java类作业分配哈哈介绍。 – deltashade

回答

0

您的代码似乎确定大部分。代码中存在一些小缺陷,我相信在理解下面提供的代码后,您将能够弄清楚这些缺陷。我已经改变了一些,使它更容易阅读。请确认它正在工作,下次请在提问时提供代码。我知道你对社区是陌生的,我也是如此。它是我们所有人的学习体验。在未来所有最好:)

public static void int sumOfEvenDigits(int num){ 
    int sum = 0; 
    int lastDig = 0; 
    while(num/10 != 0) 
    { 

     lastDig = num % 10; 
     num = num/10; 
     if(lastDig % 2 != 0) 
     { 
      continue; 
     } 
     if(lastDig > 10) 
     { 
      sum += lastDig/10; 
      sum += lastDig % 10; 
     } 
     else 
     { 
      sum += lastDig; 
     } 

    } 
    return sum; 
} 
相关问题