2001 - THỰC HIỆN PHÉP NHÂNPROGRAM THUC_HIEN_PHEP_NHAN; USES CRT...

Bài 71/2001 - Thực hiện phép nhân

Program Thuc_hien_phep_nhan;

Uses Crt;

Type so = 0..9;

Var a,b,c,d: string;

can,i: byte;

Procedure Nhap;

Begin

Clrscr;

Write('Nhap so a : '); Readln(a);

Write('Nhap so b : '); Readln(b);

Writeln('Phep nhan a va b : ');

can:=length(a)+length(b)+1;

Writeln(a:can);

Writeln('X');

Writeln(b:can);

For i:=1 to can do Write('-');

Writeln;

End;

Procedure Nhan(a: string; k: so);

Var nho: so;

x,i: byte;

nho:=0;

c:='';

For i:=length(a) downto 1 do

Begin

x:=(ord(a[i])-48)*k+nho;

nho:=x div 10;

c:=chr((x mod 10)+48)+c;

End;

If nho>0 then c:=chr(nho+48)+c;

Writeln(c:can);

can:=can-1;

Procedure Cong(var c,d: string; z:byte);

for i:=1 to length(b)-z do c:=c+'0';

If length(c) > length(d) then

For i:=1 to length(c)-length(d) do d:='0'+d

Else

For i:=1 to length(d)-length(c) do c:='0'+c;

For i:=length(d) downto 1 do

x:=ord(d[i])+ord(c[i])-96+nho;

d[i]:=chr((x mod 10)+48);

If nho>0 then d:='1'+d;

Nhap;

d:='';

For i:=length(b) downto 1 do

Nhan(a,ord(b[i])-48);

Cong(c,d,i);

Writeln(d:can);

Readln;

End.

(Lời giải của bạn Đặng Trung Thành - PTTH Nguyễn Du - Buôn Mê Thuột)