準備開學了沒什麼時間寫了
只實現了+號的過載 其他的以後再說using system;
using system.text;
namespace high_precision_calculate
public number()
public stringbuilder v
public static number operator +(number l, number r)
else if (sub < 0)
//逐位加
int count = l.v.length;//因為不知道補的是哪個,所以要重新獲取長度
char result = new char[count + 1];//result多一位
bool flag = false;
for (int i = count - 1; i >= 0; i--)
;if (c >= 10)
result[i] = convert.tochar(c + 48);
}return new number(convert.toint32(new string(result)).tostring());
}public static number operator *(number l, number r)
}}
C實現高精度小數
高精度小數 10分 題目內容 由於計算機內部表達方式的限制,浮點運算都有精度問題,為了得到高精度的計算結果,就需要自己設計實現方法。0,1 之間的任何浮點數都可以表達為兩個正整數的商,為了表達這樣兩個數的商,可以將相除的結果以多個整數來表示,每個整數表示結果的一位。即商的第一位用乙個整數來表示,第二...
高精度乘法c 實現
注 高精度乘法是應聘中常見的筆試題,主要考察用字串模擬乘法的過程,下面提供乙個比較簡單的版本實現。如果錯誤,請多指教。如 123 23 1 儲存的時候從個位往前進行儲存。2 123的個位 第0位 乘以23得到49 result 0 9,result 1 4 3 123的十位 第1位 乘以23得到46...
高精度減法(C 實現)
演算法分析 1.c 不支援大數運算,故而引入高精度演算法。2.高精度減法將大數以字串形式輸入,然後拆分轉換為一位一位的整數,之後按照小學的豎式運算方法完成編碼。注意 字串中0下標從左開始,豎式運算中0下標從右開始,故 中需要有乙個逆序操作。如a i s1 s1.length i 1 0 3.高精度減...