qq水浒红朱富:PASCAL高精度减法(500位)----急!!!!

来源:百度文库 编辑:高考问答 时间:2024/04/20 12:26:39
帮帮我啊!
500位啊!

强烈抗议楼上的无耻行为!!!!!!!!!!!!!
程序是我写的!!!!!!!!!!!!!!!!!!
可以看看http://zhidao.baidu.com/question/3360069.html
我15分钟打了两个高精度!!!!!!!!!!!!!
楼上的无耻啊!!!!!无耻啊!!!!!!!!!!

500位的高精度???
把Const Maxn=255 改成 Const Maxn=500
把Var tempstring:string 改为 Var TempString:Ansistring(要用FreePascal编译)就可以了。

楼上的真无耻!!!!!真无耻啊!!!!!!!!

楼主你可以看一看,Pascal打得像我一样首字母大写的程序多不多!!!!!!!!!!

Const
MaxN=225;
Type
NType=Array[1..MaxN]Of Integer;
Var
Len:Byte;
A,B,C:NType;
Procedure Origin;
Var
I,TempLen:Byte;
TempString:String;
Begin
Len:=0;
Fillchar(A,Sizeof(A),0);
Readln(TempString);
TempLen:=Length(TempString);
If TempLen>Len Then
Len:=TempLen;
For I:=0 To TempLen-1 Do
A[MaxN-I]:=Ord(TempString[TempLen-I])-48;
Fillchar(B,Sizeof(B),0);
Readln(TempString);
TempLen:=Length(TempString);
If TempLen>Len Then
Len:=TempLen;
For I:=0 To TempLen-1 Do
B[MaxN-I]:=Ord(TempString[TempLen-I])-48;
End;
Procedure Lend(I:Byte);
Begin
If A[I]<=0 Then
Lend(I-1);
Dec(A[I]);
A[I+1]:=A[I+1]+10;
End;
Procedure Main;
Var
I:Byte;
Begin
For I:=MaxN Downto MaxN-Len+1 Do
Begin
If A[I]<B[I] Then
Lend(I-1);
C[I]:=A[I]-B[I];
End;
End;
Procedure PrintOut;
Var
I:Byte;
Begin
If C[MaxN-Len+1]>0 Then
Write(C[MaxN-Len+1]);
For I:=MaxN-Len+2 To MaxN Do
Write(C[I]);
Writeln;
End;
Begin
Origin;
Main;
PrintOut;
End.