var a, b, с: integer;
begin
write('Введите два числа: ');
readln(a, b);
if a < b then с := a + 1 else с := b + 1;
repeat с := с - 1
until (a mod с = 0) and (b mod с = 0);
write('NOD = ', с)
end.
//2. Алгоритм с вычитанием (цикл while)
var a, b: integer;
begin
write('a = ');
readln(a);
write('b = ');
readln(b);
while a <> b do
if a > b then
a := a - b
else
b := b - a;
writeln('NOD = ', a);
end.
// Внимание! Если программа не работает, обновите версию!
begin
var a:=ArrRandom(17,-5,5); a.Println;
var s:=a.IndexesOf(t->t=0);
if s.Count>0 then s.Select(t->t+1).Println
else Writeln('нет нулей')
end.
Пример
-3 -5 0 0 1 0 -5 2 1 -5 2 -1 2 -5 0 -5 2
3 4 6 15