Конспект лекций по программированию для начинающих. Гладков В.П. - 205 стр.

UptoLike

Составители: 

207
procedure wywod(a,b:integer);
begin write(a,'/',b);writeln end;
{ Вычисление НОД(x,y) }
function nod(x,y:integer):integer;
begin if (x=0) or (y=0)
then nod:=1
else begin while x<>y do
begin while x>y do x:=x-y;
while y>x do y:=y-x
end;
nod:=x
end
end;
{ Сокращение дроби }
procedure sokr(var c,d:integer);
var r:integer;
begin r:=nod(c,d);
c:=c div r;
d:=d div r
end;
{ Сложение двух дробей }
procedure sum(a,b,c,d:integer; var e,f:integer);
var r:integer;
begin e:=a*d+b*c;
f:=b*d;
sokr(e,f)
end;
{ Вычитание двух дробей }
procedure raz(a,b,c,d:integer; var e,f:integer);
var r:integer;
begin e:=a*d-b*c;
f:=b*d;
sokr(e,f)
end;
{ Умножение двух дробей }
procedure mult(a,b,c,d:integer; var e,f:integer);
var r:integer;
begin e:=a*c;
f:=b*d;
sokr(e,f)
                                         207

procedure wywod(a,b:integer);
begin write(a,'/',b);writeln end;

{ Вычисление НОД(x,y) }
function nod(x,y:integer):integer;
begin     if (x=0) or (y=0)
          then nod:=1
          else begin while x<>y do
                        begin while x>y do x:=x-y;
                               while y>x do y:=y-x
                        end;
                        nod:=x
                 end
end;

{ Сокращение дроби }
procedure sokr(var c,d:integer);
var      r:integer;
begin    r:=nod(c,d);
         c:=c div r;
         d:=d div r
end;


{ Сложение двух дробей }
procedure sum(a,b,c,d:integer; var e,f:integer);
var r:integer;
begin      e:=a*d+b*c;
           f:=b*d;
           sokr(e,f)
end;

{ Вычитание двух дробей }
procedure raz(a,b,c,d:integer; var e,f:integer);
var r:integer;
begin      e:=a*d-b*c;
           f:=b*d;
           sokr(e,f)
end;

{ Умножение двух дробей }
procedure mult(a,b,c,d:integer; var e,f:integer);
var r:integer;
begin      e:=a*c;
           f:=b*d;
           sokr(e,f)