pascal 超级麻烦题

来源:百度知道 编辑:UC知道 时间:2024/09/20 21:29:43
希望不要带着子界、枚举、函数
题目是输入两个数(x,y<1000),输出他们的乘积.可要求就是:输出他们的竖式计算 123
* 12
---------
246
123
---------
1476
有悬赏

这个啊....
给你个好东西..自己看看输入格式好了...
加减乘,别超过500位..
第一行输入你要算几个
接下来输入算式..只能算两个数的.
var
a,b,ba:array[0..512] of integer;
c:array[0..512,0..512] of integer;
t:array[0..1024] of integer;
x:ansistring;
o:char;
i,j,m,n,l,g,k:longint;

procedure init;
begin
fillchar(a,sizeof(a),0);
fillchar(b,sizeof(b),0);
readln(x);
a[0]:=pos('+',x);
o:='+';
if a[0]=0 then
begin
a[0]:=pos('-',x);
o:='-';
end;
if a[0]=0 then
begin
a[0]:=pos('*',x);
o:='*';
end;
dec(a[0]);
for i:=1 to a[0] do
a[i]:=ord(x[a[0]-i+1])-48;
delete(x,1,a[0]+1);
b[0]:=length(x);
for i:=1 to b[0] do
b[i]:=ord(x[b[0]-i+1])-48;
end;

procedure addition;
begin
if a[0]&g