c 大數計算

2021-06-07 12:59:29 字數 1176 閱讀 9986

不會的遲早要補回來的!下面是c++大數操作。放這裡紀念一下,水平不高,大家別取笑~

#include #include #include #include #include using namespace std;

#define max 1000

string inttostring(int n)

//比較數字str1 和 str2 誰大,

int whobigger(string str1,string str2)

return 0;

}string add(string str1,string str2)

} //調整str1

for(;i=10)

//把數字前面的0濾掉

string result;

bool flag=0;

for(i=num1.size()-1;i>=0;i--)

if(num1.at(i)!=0||flag)

return result;

}//str1>str2的情況

string minu(string str1,string str2)

return result;

}//減法

string minus(string str1,string str2)

//把數字前面的0濾掉

string result;

bool flag=0;

for(int i=max-1;i>=0;i--)

if(res[i]!=0 || flag)

return result;

}//除法

string div(string str1,string str2)

string count0=inttostring(count);

for(int i=1;i<=dif;i++)

count0+='0';

res = add(res,count0);

} return res;

}int main()

{ while(1)

{ string str1,str2;

cout<<"input num1:";

cin>>str1;

cout<<"input num2:";

cin>>str2;

cout<<"add result="<

C 計算大資料階層

這是上大學時老師出的乙個問題,當時沒做出來。c 中,用普通的資料型別精確計算超過20的階乘應該是不可能的。下面通過陣列實現任意500以內的階乘,如果計算更大的數,也可以實現,不過時間要久一些。以下是程式 include using namespace std const int max 10000 ...

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

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

階乘計算 大數計算

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