A small procedure for realizing long-scale number

xiaoxiao2021-03-06  49

// The United Nations Associate Education Organization should count the population. Obviously, the general int can't meet the needs, so it is required to define a new class of Biginteger, // Multi-write hole to remind, it is written when I start school Java, I really don't have the post, Now rewritten the code.

// Time relationship, only the addition is implemented.

Bigintegertest.java

/ ** * // ** * @Author rey * @date 2006-10-2 * / public class bigintegertest extends testcase ... {public void test1 () ... {Biginteger B1 = New Biginteger ("11") Biginteger B2 = New Biginteger ("11"); Biginteger B3 = New Biginteger ("2"); Assertequals (b1, b2); assertfalse (b1.equals (b3));} public void test2 () ... { Biginteger B1 = New Biginteger ("12"); Biginteger B2 = New Biginteger ("8"); Biginteger B3 = B1.Add (b2); Assertequals (New Biginteger ("20"), B3);} public void test3 ) ... {Biginteger B1 = New Biginteger ("99"); Biginteger B2 = New Biginteger ("99"); Assertequals (New Biginteger ("198"), B1.Add (b2));} public void test4 ( ... {Biginteger B1 = New Biginteger ("9999999999999999); Biginteger B2 = New Biginteger (" 1 "); Assertequals (New Biginteger (" 10000000000000000 "), B1.Add (b2));} public void test5 ( ) ... {BIGINTEGER B1 = New Biginteger ("1"); BIGINTE Ger b2 = New Biginteger ("9999999999999999); Assertequals (New Biginteger (" 10000000000000000 "), B1.Add (b2));}}

Biginteger.java

/ ** * // ** * @author rey * @date 2006-10-2 * * / public class biginteger ... {private string value = null; public biginteger (String value) ... {this.Value = Value;} public Biginteger Add (Biginteger B2) ... {char [] a = value.tochararray (); char [] b = b2.value.tochararray (); / ** * // ** Put the longest Put it to A * / if (a.Length = 0; I ---, J -) ... {Result [J] = B [I];} for (; J> = 0; J -) ... {Result [ J] = 48;} / ** * // ** Result = a result * / for (int i = a.length - 1, sum = 0; i> = 0; I -) ... {SUM = A [i] result [i 1]; if (sum> = 106) ... { Result [i 1] = (char) (SUM - 10 - 48); Result [i] ;} else ... {result [i 1] = (char) (SUM - 48);}} / ** * // ** char [] Translate into string value * / stringbuffer SB = new stringbuffer (); for (int i = 0; i

转载请注明原文地址:https://www.9cbs.com/read-89420.html

New Post(0)