Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Write a static method called hashCode that takes as a parameter a String contain

ID: 3644050 • Letter: W

Question

Write a static method called hashCode that takes as a parameter a String containing a series of numbers and returns a hash code for the series. For example, the following call:

hashCode("88 235 -173 17")

should return "1517". The hashCode is formed by appending the sum of the last digits to the sum of each number divided by 10, (integer division). In this case (88 / 10 + 235 / 10 -173 / 10 + 17 / 10) + (88 % 10 + 235 % 10 + -173 % 10 + 17 % 10)
( 8 + 23 - 17 + 1 ) + ( 8 + 5 - 3 + 7 )
15 + 17
1517

The two sums are appended as strings, resulting in the final hashCode.

Method Call Value Returned
----------------------------------------------- --------------
hashCode("444 67 -921 15 36") "-3821"
hashCode("76 834 -6 -143") "761"
hashCode("7 7 77") "721"

Explanation / Answer

public classArrayHashing { public static void main(String[] args) { System.out.print("Hash code of {88 235 -173 17} is "); String hash = hashCode("88 235 -173 17"); System.out.print(hash);    System.out.print(" Hash code of {444 67 -921 15 36} is "); hash = hashCode("444 67 -921 15 36"); System.out.print(hash);    System.out.print(" Hash code of {76 834 -6 -143} is "); hash = hashCode("76 834 -6 -143"); System.out.print(hash);    System.out.print(" Hash code of {7 7 77} is "); hash = hashCode("7 7 77"); System.out.print(hash); }    public static String hashCode(String input) { String[] inputInt = input.split(" "); int remsum=0, basesum = 0; for(int i=0;i<inputInt.length;i++) { basesum = basesum + (Integer.parseInt(inputInt[i]))/10; remsum = remsum + (Integer.parseInt(inputInt[i]))%10; } return basesum+""+remsum; } }
Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote