/  
 ДОКУМЕНТІВ 
20298
    КАТЕГОРІЙ 
30
Про проект  Рекламодавцям  Зворотній зв`язок  Контакт 

Область дії означень та побічний ефект, Детальна інформація

Тема: Область дії означень та побічний ефект
Тип документу: Реферат
Предмет: Комп`ютерні науки
Автор: Олексій
Розмір: 0
Скачувань: 796
Скачати "Реферат на тему Область дії означень та побічний ефект"
Сторінки 1   2   3   4   5  
writeln('задайте дріб (два цілих, друге не 0):'); readfr(a, b);

writeln('задайте дріб (два цілих, друге не 0):'); readfr(c, d);

plusfr(a, b, c, d, r1, r2);

writefr(r1, r2);

end.

А тепер почнемо уточнювати підпрограми. Процедура читання очевидна:

procedure readfr(var x, y : integer);

begin readln(x); readln(y) end;

Передбачається, що при виконанні програми користувач набере дві цілі сталі.

Процедура додавання повинна повертати результат додавання у вигляді нескоротного дробу. Нехай її параметри x1, y1, x2, y2 задають два дроби, що додаються, а x3, y3 – результат. Скорочення дробу задамо процедурою redufr. Її параметри-змінні задають дріб (скорочений спочатку і в результаті). Тоді додавання задається такою процедурою:

procedure plusfr(x1, y1, x2, y2 : integer; var x3, y3 : integer);

begin x3:=x1*y2+x2*y1; y3:=y1*y2;

redufr(x3, y3)

end;

O

O

O

o

Tзділити на їх найбільший спільний дільник (задача 4.5). Нехай його обчислення задає функція gcd, яку ми тут не уточнюємо. Тоді процедура скорочення redufr очевидна:

procedure redufr(var x1, y1 : integer);

var t : integer;

begin

t:=gcd(x1, y1);

x1:=x1 div t; y1:=y1 div t

end;

Нарешті, наведемо розташування наведених підпрограм у блоці програми. Функція gcd повинна бути записана перед процедурою redufr, оскільки в ній визивається. Так само ця процедура повинна бути записана перед процедурою plusfr. Взаємне розташування plusfr, writefr і readfr не має значення:



function gcd(x, y : integer) : integer; …

begin … end;

procedure redufr(var x1, y1 : integer); …

Сторінки 1   2   3   4   5  
Коментарі до даного документу
Додати коментар