diff options
Diffstat (limited to 'src')
| -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); } |
