Question: 8.16 (Huge Integer Class) Create a class HugeInteger which uses a 40-element array of digits to store integers as large as 40 digits each. Provide

8.16 (Huge Integer Class) Create a class HugeInteger which uses a 40-element array of digits to store integers as large as 40 digits each. Provide methods parse, toString, add and subtract. Method parse should receive a String, extract each digit using method charAt and place the integer equivalent of each digit into the integer array. For comparing HugeInteger objects, provide the following methods: isEqualTo, isNotEqualTo, isGreaterThan, isLessThan, isGreaterThanOrEqualTo and isLessThanOrEqualTo. Each of these is a predicate method that returns true if the relationship holds between the two HugeInteger objects and returns false if the relationship does not hold. Provide a predicate method isZero. If you feel ambitious, also provide methods multiply, divide and remainder. [Note: Primitive boolean values can be output as the word true or the word false with format specifier %b.] using this file to start huge integer if possible

import java.io.*;

public class HugeInteger { private int[] intArray; private int numDigits; // stores the number of digits in intArray

public HugeInteger(String s) { intArray = new int[40]; numDigits = 0; // call parse(s) }

public HugeInteger( ) { intArray = new int[40]; numDigits = 0; } public void parse(String s) { // Add each digit to the arrays // update numDigits }

public static HugeInteger add(HugeInteger hugeInt1, HugeInteger hugeInt2) { // Create hugeInt3 // Loop // Add digits from hugeInt1 and hugeInt2, // Store in corresponding hugeInt3 // End // // return hugeInt3 }

public static HugeInteger subtract(HugeInteger hugeInt1, HugeInteger hugeInt2) { // Create hugeInt3 // Loop // Subtract hugeInt2 digit from hugeInt1, // Store in corresponding hugeInt3 // End // // return hugeInt3

}

public static boolean isEqualTo(HugeInteger hugeInt1, HugeInteger hugeInt2) { // return true if the value represented by // elements of hugeInt1.intArray is equal to // value represented by elements of hughInt2.intArray

}

public static boolean isNotEqualTo(HugeInteger hugeInt1, HugeInteger hugeInt2) { // return true if the value represented by // elements of hugeInt1.intArray is not equal to // value represented by elements of hughInt2.intArray

}

public static boolean isGreaterThan(HugeInteger hugeInt1, HugeInteger hugeInt2) { // return true if the value represented by // elements of hugeInt1.intArray is greater than // value represented by elements of hughInt2.intArray

}

public static boolean isLessThan(HugeInteger hugeInt1, HugeInteger hugeInt2) { // return true if the value represented by // elements of hugeInt1.intArray is less than // value represented by elements of hughInt2.intArray }

public static boolean isGreaterThanOrEqualTo(HugeInteger hugeInt1, HugeInteger hugeInt2) { // return true if the value represented by // elements of hugeInt1.intArray is greater than or equal to // value represented by elements of hughInt2.intArray }

public static boolean isZero(HugeInteger hugeInt1 ) { // return true if the value represented by // elements of hugeInt1.intArray is 0 }

public String toString( ) { // return string representation of this object }

}

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!