[r]
(1)Họ tên : Hoàng Vĩnh Linh Lớp : ĐH Toán Tin K41
Bài kiểm tra: Công nghệ phần mềm
Điểm Nhận xét thầy, cô giáo
Đề bài: Viết chương trình cài đặt tốn phân số Bài làm
Program PHANSO; Uses crt;
Type
PS= record tu : integer; mau: byte; end;
Var
x,y: PS;
Function Ucln(a,b: integer): integer; var
r: integer; begin
repeat
r:= a mod b; a:= b;
(2)Procedure QD(Var x,y: PS); var
mau: integer;
function Mauchung(mx,my: integer): integer; var
m: integer; begin
Mauchung:= (mx*my) div Ucln(mx,my); end;
begin
mau:= Mauchung(x.mau,y.mau); x.tu:= x.tu*(mau div x.mau); x.mau:=mau;
y.tu:= y.tu*(mau div y.mau); y.mau:=mau;
end;
Procedure RutGon(Var x: PS); var
u: integer; begin
u:= Ucln(Abs(x.tu),x.mau); x.tu:= x.tu div u;
x.mau:= x.mau div u; end;
Procedure Cong(x,y: PS); var
z: PS; begin
QD(x,y);
z.tu:= x.tu+y.tu; z.mau:=x.mau; RutGon(z);
writeln('Tong phan so la: ':30,z.tu,'/',z.mau); end;
(3)z: PS; begin
QD(x,y);
z.tu:= x.tu-y.tu; z.mau:=x.mau; RutGon(z);
writeln('Hieu phan so la: ':30,z.tu,'/',z.mau); end;
Procedure Nhan(x,y: PS); var
z: PS; begin
z.tu:= x.tu*y.tu;
z.mau:=x.mau*y.mau; RutGon(z);
writeln('Tich phan so la: ':30,z.tu,'/',z.mau); end;
Procedure Chia(x,y: PS); var
z: PS; begin
if y.tu=0 then begin
writeln(' Phan so thu hai= nen khong chia duoc');
exit; end;
z.tu:= x.tu*y.mau; z.mau:=x.mau*y.tu; if z.mau<0 then begin
z.mau:= -z.mau; z.tu:= -z.tu; end;
RutGon(z);
(4)Begin clrscr;
writeln(' CAC PHEP TOAN TREN PHAN SO '); writeln('Nhap phan so thu nhat ');
write('tu= ':30); readln(x.tu); write('mau= ':30); readln(x.mau); writeln('Nhap phan so thu hai '); write('tu= ':30); readln(y.tu); write('mau= ':30); readln(y.mau); if (x.mau<=0) or (x.mau<=0) then begin
write(' Mau so phai > 0'); readln;
exit; end;
Writeln(' Hai phan so da cho la:');
write(' ':30,x.tu,'/',x.mau); writeln(' ':5,y.tu,'/',y.mau); Writeln(' Phan so rut gon la:');
RutGon(x); RutGon(y);
write(' ':30,x.tu,'/',x.mau); writeln(' ':5,y.tu,'/',y.mau); Cong(x,y);