ВУЗ:
Составители:
Рубрика:
72
procedure Add(var r1:Rational; r2:Rational);
var _num,_den:Integer;
begin
_num:=r1.num*r2.den+r1.den*r2.num;
_den:=r1.den*r2.den;
r1.num:=_num; r1.den:=_den;
Normalize(r1); Reduce(r1);
end;
procedure Subtract(var r1:Rational; r2:Rational);
var _num,_den:Integer;
begin
_num:=r1.num*r2.den-r1.den*r2.num;
_den:=r1.den*r2.den;
r1.num:=_num; r1.den:=_den;
Normalize(r1); Reduce(r1);
end;
procedure MultiplyBy(var r1:Rational; r2:Rational);
var _num,_den:Integer;
begin
_num:=r1.num*r2.num;
_den:=r1.den*r2.den;
r1.num:=_num; r1.den:=_den;
Normalize(r1); Reduce(r1);
end;
procedure DivideBy(var r1:Rational; r2:Rational);
var _num,_den:Integer;
begin
if r2.num=0 then raise Exception.Create('Division by zero');
_num:=r1.num*r2.den;
_den:=r1.den*r2.num;
r1.num:=_num; r1.den:=_den;
Normalize(r1); Reduce(r1);
end;
function AreEqual(r1,r2:Rational): Boolean;
begin
if r1.num*r2.den=r2.num*r1.den
then result:=true
else result:=false;
end;
function AsString(r: Rational): String;
begin
result:=IntToStr(r.num)+'/'+IntToStr(r.den);
end;
end.
procedure Add(var r1:Rational; r2:Rational); var _num,_den:Integer; begin _num:=r1.num*r2.den+r1.den*r2.num; _den:=r1.den*r2.den; r1.num:=_num; r1.den:=_den; Normalize(r1); Reduce(r1); end; procedure Subtract(var r1:Rational; r2:Rational); var _num,_den:Integer; begin _num:=r1.num*r2.den-r1.den*r2.num; _den:=r1.den*r2.den; r1.num:=_num; r1.den:=_den; Normalize(r1); Reduce(r1); end; procedure MultiplyBy(var r1:Rational; r2:Rational); var _num,_den:Integer; begin _num:=r1.num*r2.num; _den:=r1.den*r2.den; r1.num:=_num; r1.den:=_den; Normalize(r1); Reduce(r1); end; procedure DivideBy(var r1:Rational; r2:Rational); var _num,_den:Integer; begin if r2.num=0 then raise Exception.Create('Division by zero'); _num:=r1.num*r2.den; _den:=r1.den*r2.num; r1.num:=_num; r1.den:=_den; Normalize(r1); Reduce(r1); end; function AreEqual(r1,r2:Rational): Boolean; begin if r1.num*r2.den=r2.num*r1.den then result:=true else result:=false; end; function AsString(r: Rational): String; begin result:=IntToStr(r.num)+'/'+IntToStr(r.den); end; end. 72
Страницы
- « первая
- ‹ предыдущая
- …
- 70
- 71
- 72
- 73
- 74
- …
- следующая ›
- последняя »