Question: For Java Programming Step 1. Double every second digit from right to left. If doubling of a digit results in a two-digit number, add up
For Java Programming
Step 1. Double every second digit from right to left. If doubling of a digit results in a two-digit number, add up the two digits to get a single-digit number.
2 * 2 = 4
2 * 2 = 4
4 * 2 = 8
1 * 2 = 2
6 * 2 = 12 (1 + 2 = 3)
5 * 2 = 10 (1 + 0 = 1)
8 * 2 = 16 (1 + 6 = 7)
4 * 2 = 8
Step 2. Now add all single-digit numbers from Step 1.
4 + 4 + 8 + 2 + 3 + 1 + 7 + 8 = 37
Step 3. Add all digits in the odd places from right to left in the card number.
6 + 6 + 0 + 8 + 0 + 7 + 8 + 3 = 38
Step 4. Sum the results from Step 2 and Step 3.
37 + 38 = 75
Step 5. If the result from Step 4 is divisible by 10, the card number is valid; otherwise, it is invalid. For example, the number 4388576018402626 is invalid, but the number 4388576018410707 is valid.
Program Requirements:
Write a program that accepts a credit card number from Cmd argument list and display whether the number is valid or invalid. Your program must define and use following methods (at least)
boolean isValid(long number)
// returns true if the card number is valid
int sumOfDoubleEvenPlace(long number)
// gets the result from steps 1 and 2 above
int sumOfOddPlace(long number)
// gets sum of odd place digits in number from step 3 above
void main(String[] args)
// test program that takes input and displays output by invoking necessary methods
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
