大數的計算

2021-06-14 12:57:15 字數 1260 閱讀 2910

最近由於系統的要求,需要做乙個輔助的功能大數的十進位制、十六進製制的計算,在網上找到很多資料都不是很全面,所以我在此記錄一下大數的計算器的後台的**。

/*** 十進位制的加、減、乘、除、mod、求逆的運算

* */

public class bigintegerdemo

/*** 減法

* */

public static biginteger sub(string value1,string value2)

/*** 乘法

* */

public static biginteger mul(string value1,string value2)

/*** 除法

* */

public static biginteger div(string value1,string value2)

/*** 取模

* */

public static biginteger mod(string value1,string value2)

/*** 求逆

* */

public static biginteger inverse(string value1,string value2) catch (exception e)

return modinversevalue;}}

/*** 十六進製制的加、減、乘、除、mod、求逆的運算

* */

public class hexbiginteger

/*** 減法

* */

public static string sub(string value1,string value2)

/*** 乘法

* */

public static string mul(string value1,string value2)

/*** 除法

* */

public static string div(string value1,string value2)

/*** 取模

* */

public static string mod(string value1,string value2)

/*** 求逆

* */

public static string inverse(string value1,string value2)

public static void main(string args)

}

大數間的乘法計算 大數計算

前幾天,朋友碰到了乙個大數計算的問題,匆忙之下我寫了乙個出來。說實話寫的不怎麼好,有點亂,先貼出來,然後過幾天再改好,貼一下。如計算 9999999999999 1234567890123 package test public class bignumber public static doubl...

計算大數的階乘

問題 計算整數n的階乘,要求計算的結果最長可以到50位!50位十進位制而不是二進位制 先上 然後分析 解析 主要是通過陣列的思想來做。因為階乘太大,一般的資料型別是放不下的!所以可以用陣列來做,陣列每個元素都在0 9之間,陣列的乙個元素表示一位!比如 data 9 2 data 8 3 data 7...

階乘計算 大數計算

輸入乙個正整數n,輸出n 的值。其中n 123 n。演算法描述 n 可能很大,而計算機能表示的整數範圍有限,需要使用高精度計算的方法。使用乙個陣列a來表示乙個大整數a,a 0 表示a的個位,a 1 表示a的十位,依次類推。將a乘以乙個整數k變為將陣列a的每乙個元素都乘以k,請注意處理相應的進製。首先...