diff options
| author | mo <mo.khan@gmail.com> | 2019-06-09 20:15:34 -0600 |
|---|---|---|
| committer | mo <mo.khan@gmail.com> | 2019-06-09 20:15:34 -0600 |
| commit | 31ceeba2b990b8e78f48efc35ddd62e5e4c14f0c (patch) | |
| tree | b4fea20ffab03734b0a0d56103efcef698d743ce /src/Q3 | |
| parent | 7ca950ed43cc278bac274c55d25cb5e32f3ca99f (diff) | |
calculate even digit sum
Diffstat (limited to 'src/Q3')
| -rw-r--r-- | src/Q3/CreditCard.java | 11 | ||||
| -rw-r--r-- | src/Q3/CreditCardTest.java | 5 |
2 files changed, 13 insertions, 3 deletions
diff --git a/src/Q3/CreditCard.java b/src/Q3/CreditCard.java index d8a5371..fc4cced 100644 --- a/src/Q3/CreditCard.java +++ b/src/Q3/CreditCard.java @@ -18,9 +18,10 @@ public class CreditCard { int digit = Character.getNumericValue(reversed.charAt(i)); if ((i + 1) % 2 == 0) { - } else { - this.oddSum += digit; - } + String value = String.valueOf(digit * 2); + for (int j = 0; j < value.length(); j++) + this.evenSum += Character.getNumericValue(value.charAt(j)); + } else this.oddSum += digit; } } @@ -88,4 +89,8 @@ public class CreditCard { return "Unknown"; } + + private void puts(String format, Object... args) { + System.out.println(String.format(format, args)); + } } diff --git a/src/Q3/CreditCardTest.java b/src/Q3/CreditCardTest.java index 9033f65..f5c1fd8 100644 --- a/src/Q3/CreditCardTest.java +++ b/src/Q3/CreditCardTest.java @@ -51,6 +51,11 @@ public class CreditCardTest extends TestCase { assertEquals(38, CreateSUT("4388576018402626").getOddSum()); } + public void test_getEvenSum() { + assertEquals(28, CreateSUT("49927398716").getEvenSum()); + assertEquals(37, CreateSUT("4388576018402626").getEvenSum()); + } + private CreditCard CreateSUT(String number) { return new CreditCard(number); } |
