1樓:匿名使用者
你可以找一下加密庫的原始檔來研究下,裡面就有大數四則運算,曾經試著寫2048位的大數四則運算,結果就寫了加法,減法,和簡單的沒有優化的乘法就沒信心寫了。。。大數是用陣列表示的,沒有用結構體,複製來的,不知能不能執行。。
#define max 400
void my_read(int *a)
else
a[i]=s[len-i]-'0';
}if (flag)
a[0]=-(len-1);
else
a[0]=len;
break;
}return;
}void my_print(int *a)for(i=abs(a[0]);i>=1;i--)printf("%d",a[i]);
printf("\n");
}void format(int *a)
if (p>=a[0]) a[0]=p;
return;
}void add(int *a,int *b,int *c)else}}
format1(int *a)
}void sub_1(int *a,int *b,int *c)void sub(int *a,int *b,int *c)if (flag==0)
flag=0;
if (a[0]==b[0])
if (a[i]b[0])
sub_1(a,b,c);
else
if (a[0]0 && b[0]<0)
if (a[0]>0 && b[0]>0)if (a[0]<0 && b[0]>0)c:printf("\n\t\t\t");
printf("a=");
my_print(a);
printf("\n\t\t\t");
printf("b=");
my_print(b);
printf("\n\t\t\t");
printf("c=a+b=");
my_print(c);
goto loop;
}if (yn=='2')
if (a[0]<0 && b[0]>0)if (a[0]>0 && b[0]<0)if (a[0]>0 && b[0]>0) sub(a,b,c);
printf("a=");
my_print(a);
printf("\nb=");
my_print(b);
printf("\nc=a-b=");
my_print(c);
goto loop;
}if (yn=='3')
if (a[0]>0 && b[0]<0)if (a[0]<0 && b[0]<0)matiply(a,b,c);
d:printf("\n\t\t\ta=");
my_print(a);
printf("\n\t\t\tb=");
my_print(b);
printf("\n\t\t\tc=a*b=");
my_print(c);
goto loop;
}loop:
while(1)}
2樓:匿名使用者
思路:實現大數的比較
實現大數的加1操作
實現大數的減1操作
加法:a+b=(a+1) + (b-1),按照此原則遞迴直到b-1為0
減法:a-b=(a-1) - (b-1),按照此原則遞迴直到b-1為0
乘法:a*b=a+a*(b-1),按照此原則遞迴直到b-1為0除法:a/b=1 + (a-b)/b,按照此原則遞迴直到 (a-b) < b
3樓:尼瑪真響亮
用結構體來表示大數,理論上是不限制的。
吧相應的進位做好就ok
要求用c語言編寫程式實現大整數的四則運算(加、減、乘、除) 20
4樓:匿名使用者
如果只是實現(加、減、乘、除)那麼,直接用文字檔案儲存就好,雖然效率略低,但可以保證精確度。
直接按照小學教的加減乘除原理,逐位進行計算,保證無線精確(記憶體不夠大、cpu不夠快不算)。 這個我就能做。
5樓:匿名使用者
學習c語言就去敗筆網路安全小組
6樓:豬頭或火寶寶
俺用c語言編的,但是用棧實現的!!!
7樓:鬼angel鬼
很感興趣 可是不會 支援你
導數的四則運演算法則
隨便什麼名啦啦 1 u v u v 2 u v u v 3 uv u v uv 4 u v u v uv v 2如果函式y f x 在開區間內每一點都可導,就稱函式f x 在區間內可導。這時函式y f x 對於區間內的每一個確定的x值,都對應著一個確定的導數值,這就構成一個新的函式,稱這個函式為原來...
含分數整數小數和百分數的四則混合運算,求
1.125 3 125 5 25 3 25 2.9999 3 101 11 101 92 3.23 4 3 4 3 6 2 4.3 7 49 9 4 3 5.8 9 15 36 1 27 6.12 5 6 2 9 3 7.8 5 4 1 4 8.6 3 8 3 8 6 9.4 7 5 9 3 7 5...
C 製作簡單四則運算計算器,DX來幫個忙
滄海v飛天 whlie true n 指定輸出的精確度為 n.普通的字串在此之後則被截斷 如果精確度 n 大於欄位長度,則欄位長度變為精確度 n 則使用精確度指定縱列的總數 如果不指定精確度,則 會自動計算最適合的輸出結果 精確度對於其他的資料型別無效.n n 指定 fs 和精確度,如果 n 是 0...