10.05.2017

Tối giản phân số

Lập hàm USCLN(m,n) để tính USCLN của m và m. áp dụng hàm đó để tối giản phân số a/b bất kỳ (a,b là các số nguyên nhập từ bàn phím).
 Điều khiển chương trình sao cho có thể thực hiện được nhiệm vụ trên với hết phân số này đến phân số khác.
                                                                 Giải
Var m,n:Integer; t,mu:Real; hoi:Char;
Function UCLN(m,n:Longint):Longint;
       Begin
           Repeat
               If m>n Then m:=m-n;
               If n>m Then n:=n-m;
           Until m=n;
           UCLN:=m;
       End;
BEGIN
       Repeat
           Write('Cho m, n: '); Readln(m,n);
           t:=m/UCLN(m,n); mu:=n/UCLN(m,n);
           Writeln('=> UCLN = ',UCLN(m,n));
           Writeln('Toi gian phan so ',m,'/',n,' = ',t:3:0,'/',mu:3:0);
           Writeln;
           Write(' Ban co thuc hien voi phan so khac nua khong??(C/K):');textcolor(White);
           Read(hoi);
           Writeln;
       Until Upcase(hoi)='K';
   Readln;
END.

No comments:

Post a Comment

Cảm ơn bạn đã nhận xét