pascal程式設計 高精度求積

2022-05-08 09:49:01 字數 2175 閱讀 4517

1樓:匿名使用者

vara,b,c:array[1..100] of longint;

n1,n2,n:ansistring;

lena,lenb,lenc,i,j,x:longint;

begin

readln(n);

i:=pos(' ',n);

n1:=copy(n,1,i-1);

delete(n,1,i);

n2:=n;

lena:=length(n1);

lenb:=length(n2);

for i:=1 to lena do a[lena-i+1]:=ord(n1[i])-ord('0');

for i:=1 to lenb do b[lenb-i+1]:=ord(n2[i])-ord('0');

for i:=1 to lena do begin

x:=0;

for j:=1 to lenb do begin

x:=a[i]*b[j]+x div 10+c[i+j-1];

c[i+j-1]:=x mod 10;

end;

c[i+j]:= x div 10;

end;

lenc:=i+j;

while (c[lenc]=0) and (lenc>1) do dec(lenc);

for i:=lenc downto 1 do write(c[i]);

end.

2樓:雪花飄飄

var a,b,c:array[1..300] of integer;

la,lb,j,i:integer;

s1,s2:string;

begin

readln(s1);

readln(s2);

la:=length(s1);

lb:=length(s2);

for i:=1 to la do

a[i]:=ord(s1[la-i+1])-48;

for i:=1 to lb do

b[i]:=ord(s2[lb-i+1])-48;

for i:=1 to la do

for j:=1 to lb do

c[i+j-1]:=c[i+j-1]+a[i]*b[j];

for i:=1 to la+lb do

begin

c[i+1]:=c[i+1]+(c[i] div 10);

c[i]:=c[i] mod 10;

end;

j:=300;

while c[j]=0 do dec(j);

for i:=j downto 1 do

write(c[i]);

end.

我們老師給的程式,希望對你有用

望採納~

3樓:匿名使用者

vars1,s2:ansistring;

a,b,c:array[1..2000]of integer;

len1,len2,i,j,k:longint;

begin

fillchar(a,sizeof(a),0);

fillchar(b,sizeof(b),0);

fillchar(c,sizeof(c),0);

readln(s1);

readln(s2);

len1:=length(s1);

for i:=1 to len1 do a[i]:=ord(s1[len1+1-i])-48;

len2:=length(s2);

for i:=1 to len2 do b[i]:=ord(s2[len2+1-i])-48;

for i:=1 to len2 do

begin

k:=0;

for j:=1 to len1+1 dobegin

k:=a[j]*b[i]+c[i+j-1]+k;

c[i+j-1]:=k mod 10;

k:=k div 10;

end;

end;

len1:=2000;

while c[len1]=0 do dec(len1);

for i:=len1 downto 1 do write(c[i]);

writeln;

end.

Pascal高精度,pascal的高精度演算法

開個陣列 每個元素存10進位制的若干位,連起來表示整個數字 要寫得好的話得用高效的演算法,同時控制好記憶體的分配 自己拿幾個三位數 四位數 五位數 模擬一下就ok了 想法就是把這些n位數拆成n位慢慢看 高精度數的定義 type hp array 0.maxlen of integer 1 高精度加法...

C 高精度求解

include include main int e 1002 int c 2005 int a1,b1,i,j,k scanf s a scanf s b a1 strlen a b1 strlen b for i 1 i a1 i d i a a1 i 0 for i 1 i b1 i e i ...

pascal程式設計

你提的問題很多,題目能否講究一下,比如將 狐狸和兔子 放在標題中,以便別人查詢 這不就是狼追兔子的翻版嗎?將1234567890這閉合的十個洞想象成 由這十個數字串一個接一個接起來的無限長的直線vari,j longint k array 0.9 of longint sum longint beg...