{**********************************************************************} { Moodul Taisarv sisaldab kahe t„isarvu sisestamise, v„ljastamise, } { suurima histeguri ja v„hima hiskordse leidmise protseduure. } { N.Vendt, R.Sune } {**********************************************************************} unit Taisarv; interface type taisarvupaar=record a:integer; b:word; end; var paar,taandpaar:taisarvupaar; syt:integer; procedure SisTais; procedure ValjaTais; procedure SuurimYhisTegur; procedure VahimYhisKordne; implementation procedure SisTais; begin writeln('Sisesta t„isarvude paar.'); write('a:(integer):'); readln(paar.a); write('b:(word):'); readln(paar.b); end; procedure ValjaTais; begin writeln('a=',paar.a,' b=',paar.b); end; procedure SuurimYhisTegur; var inttais,abi:integer; wortais:word; begin inttais:=paar.a; wortais:=paar.b; with paar do begin while a<>b do if a>b then dec(a,b) else dec(b,a); syt:=a; end; taandpaar.a:=inttais div syt; taandpaar.b:=wortais div syt; end; function Vyk(suurem,vaiksem:integer):longint; var i:word; arv:longint; begin i:=0; repeat inc(i); arv:=i*suurem; if (arv mod vaiksem)=0 then Vyk:=arv; until (arv mod vaiksem)=0; end; procedure VahimYhisKordne; begin write('V„him hiskordne='); if paar.a>paar.b then writeln(Vyk(paar.a,paar.b)) else writeln(Vyk(paar.b,paar.a)); end; end.