Description
Goal
To get hands on experience with algorithms to perform mathematical operations on large integers.
High-level description
4. You will further need to implement the following functions:
HeftyInteger multiply(HeftyInteger other)
HeftyInteger[] XGCD(HeftyInteger other)
Any additional helper functions that you deem necessary.
5. You may not use any calls the Java API class java.math.BigInteger or any other JCL class
within HeftyInteger . |
|
2. Once HeftyInteger is complete, make sure your implementation of |
HeftyInteger can be used |
to run the driver programs contained in MultiplicationTest.java |
and XgcdTest.java . To get |
full credit, your implementation should be efficient enough to complete multiplication or XGCD given 200-digit inputs within 3 minutes.
Submission Guidelines
DO NOT upload any IDE package files.
You must be able to compile the driver programs by running javac MultiplicationTest.java and javac XgcdTest.java , respectively.
You must be able to run the driver program by running java MultiplicationTest and java XgcdTest , respectively.
You must fill out info_sheet.txt .
The project is due at the precise date and time stated above. Upload your progress to Box frequently, even far in advance of this deadline. No late assignments will be accepted. At the deadline, your Box folder will automatically be changed to read-only, and no more changes will be accepted. Whatever is present in your Box folder at that time will be considered your submission for this assignment—no other submissions will be considered.
Grading Rubric
HeftyInteger
Feature Points
multiply 40
XGCD |
55 |
Assignment info sheet/submission |
5 |