Multiply Evens by Odds
Здравейте,
имам проблем със задача 10. Multiply Evens by Odds от лекцията Methods.
Create a program that reads an integer number and multiplies the sum of all its even digits by the sum of all its odd digits:
Examples
Input |
Output |
Comments |
12345 |
54 |
12345 has 2 even digits - 2 and 4. Even digits have sum of 6. Also it has 3 odd digits - 1, 3 and 5. Odd digits have sum of 9. Multiply 6 by 9 and you get 54. |
-12345 |
54 |
|
Изпитвам затруднение със записа, когато числото е отрицателно.
Това е кодът ми:
package com.company;
import java.util.Arrays;
import java.util.Scanner;
public class MultiplyEvensByOdds {
public static void main(String[] args){
Scanner s = new Scanner(System.in);
int[] numbers= Arrays.stream(s.nextLine().split("")).
mapToInt(e-> Integer.parseInt(e)).toArray();
int es=0, os=0;
for (int i=0;i<numbers.length;i++){
if (numbers[i]%2==0){
es+=numbers[i];
} else {
os+=numbers[i];
}
}
System.out.println(es*os);
}
}
Благодаря предварително
Добре, но в джава не ми позволява line[i] да го използвам когато е стринг, а трябва да прескоча първия елемент ако е "-". Това ми е проблемът, че не знам как да го напиша като код.