1)
var
a, b: integer;
begin
writeln('Введите a, b: '); readln(a, b);
if(b mod a = 0) then writeln('Является делителем')
else writeln('Не является делителем');
end.
2)
var
x, y, tmp: real;
begin
repeat
writeln('Введите x, y: '); readln(x, y);
until(x <> y);
if(x > y) then begin
tmp := y;
y := (x + y) / 2;
x := 2*(x * tmp);
writeln('Большее - X = ', x, ' Меньшее - Y = ', y);
end else begin
tmp := x;
x := (x + y) / 2;
y := 2*(tmp * y);
writeln('Большее - Y = ', y, ' Меньшее - X = ', x);
end;
end.
Объяснение:
Начало;
Ввод X, Y (они у нас уже есть в табл. 1 и 2 (к примеру, в 1 табл. X=9, Y=14));
X=Y (у нас X=9, Y=14; 9 не равна 14, а это значит мы идём по стрелочке "нет");
X>Y (9 не больше 14, идём по стрелочке "нет");
Y=Y-X (подставляем в формулу наши X, Y из табл. 1 и получаем Y=14-9=5);
Теперь переходим на новую строчку табл. 1. X остаётся прежним (9), а в Y пишем тот, что мы нашли (5). Начинаем всё заново.
X=Y (9 не равна 5, идём по стрелочке "нет");
X>Y (9 больше 5, а это значит мы идём по стрелочке "да");
X=X-Y (подставляем в формулу наши X, Y. Это уже будет X=9-5=4)
Теперь переходим на новую строчку табл. 1. X теперь 4, а Y остаётся прежним (5). Начинаем всё заново.
Так проделываем каждый раз пока X не станет равно Y (в 1 табл. это 1=1).