2. Now add all single-digit numbers from Step 1. 4 + 4 + 8 + 2 + 3 + 1 + 7 + 8 = 37 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 4. Sum...


2. Now add all single-digit numbers from Step 1.<br>4 + 4 + 8 + 2 + 3 + 1 + 7 + 8 = 37<br>3. Add all digits in the odd places from right to left in the card number.<br>6 + 6 + 0 + 8 + 0 + 7 + 8 + 3 = 38<br>4. Sum the results from Step 2 and Step 3.<br>37 + 38 = 75<br>5. If the result from Step 4 is divisible by 10, the card number is valid; otherwise,<br>it is invalid. For example, the number 4388576018402626 is invalid, but the<br>number 4388576018410707 is valid.<br>Write a program that prompts the user to enter a credit card number as a long<br>integer. Display whether the number is valid or invalid. Design your program to<br>use the following methods:<br>/** Return true if the card number is valid */<br>public static boolean isValid(long number)<br>/** Get the result from Step 2 */<br>public static int sumofDoubleEvenPlace(long number)<br>/** Return this number if it is a single digit, otherwise,<br>* return the sum of the two digits */<br>public static int getDigit(int number)<br>/** Return sum of odd-place digits in number */<br>public static int sumof0ddPlace(long number)<br>/** Return true if the digit d is a prefix for number */<br>public static boolean prefixMatched(long number, int d)<br>/** Return the number of digits in d */<br>public static int getSize(long d)<br>/** Return the first k number of digits from number. If the<br>* number of digits in number is less than k, return number. */<br>public static long getPrefix(long number, int k)<br>Here are sample runs of the program: (You may also implement this program by<br>reading the input as a string and processing the string to validate the credit card.)<br>

Extracted text: 2. Now add all single-digit numbers from Step 1. 4 + 4 + 8 + 2 + 3 + 1 + 7 + 8 = 37 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 4. Sum the results from Step 2 and Step 3. 37 + 38 = 75 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. Write a program that prompts the user to enter a credit card number as a long integer. Display whether the number is valid or invalid. Design your program to use the following methods: /** Return true if the card number is valid */ public static boolean isValid(long number) /** Get the result from Step 2 */ public static int sumofDoubleEvenPlace(long number) /** Return this number if it is a single digit, otherwise, * return the sum of the two digits */ public static int getDigit(int number) /** Return sum of odd-place digits in number */ public static int sumof0ddPlace(long number) /** Return true if the digit d is a prefix for number */ public static boolean prefixMatched(long number, int d) /** Return the number of digits in d */ public static int getSize(long d) /** Return the first k number of digits from number. If the * number of digits in number is less than k, return number. */ public static long getPrefix(long number, int k) Here are sample runs of the program: (You may also implement this program by reading the input as a string and processing the string to validate the credit card.)
(Financial: credit card number validation) Credit card numbers follow certain pat-<br>terns. A credit card number must have between 13 and 16 digits. It must start with:<br>4 for Visa cards<br>5 for Master cards<br>37 for American Express cards<br>6 for Discover cards<br>In 1954, Hans Luhn of IBM proposed an algorithm for validating credit card<br>numbers. The algorithm is useful to determine whether a card number is entered<br>correctly or whether a credit card is scanned correctly by a scanner. Credit card<br>numbers are generated following this validity check, commonly known as the<br>Luhn check or the Mod 10 check, which can be described as follows (for illustra-<br>tion, consider the card number 4388576018402626):<br>1. Double every second digit from right to left. If doubling of a digit results in a<br>two-digit number, add up the two digits to get a single-digit number.<br>4388576018402626<br>→ 2 * 2 = 4<br>→ 2 * 2 = 4<br>→ 4 * 2 = 8<br>→ 1 * 2 = 2<br>6 * 2 = 12 (1+ 2 = 3)<br>→ 5 * 2 = 10 (1+ 0 = 1)<br>→ 8 * 2 = 16 (1 + 6 = 7)<br>→ 4 * 2 = 8<br>

Extracted text: (Financial: credit card number validation) Credit card numbers follow certain pat- terns. A credit card number must have between 13 and 16 digits. It must start with: 4 for Visa cards 5 for Master cards 37 for American Express cards 6 for Discover cards In 1954, Hans Luhn of IBM proposed an algorithm for validating credit card numbers. The algorithm is useful to determine whether a card number is entered correctly or whether a credit card is scanned correctly by a scanner. Credit card numbers are generated following this validity check, commonly known as the Luhn check or the Mod 10 check, which can be described as follows (for illustra- tion, consider the card number 4388576018402626): 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. 4388576018402626 → 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
Jun 01, 2022
SOLUTION.PDF

Get Answer To This Question

Related Questions & Answers

More Questions »

Submit New Assignment

Copy and Paste Your Assignment Here