var a, b, c: integer; begin write('a = '); readln(a); write('b = '); readln(b); write('c = '); readln(c); write('нод(', a, ', ', b, ', ', c, ') = '); while (a < > 0) and (b < > 0) do if a > = b then a : = a mod b else b : = b mod a; a : = a + b; while (c < > 0) and (a < > 0) do if a > = c then a : = a mod c else c : = c mod a; writeln(a + c); end.
Поделитесь своими знаниями, ответьте на вопрос:
Определить тип алгоритма для указанных команд: сказать , повторить 20 раз, всегда
в цикле, кажется, так:
for i: =1 to n do
if (mas[i] mod 2 = 0) and (mas[i] mod 3 = 0) and (mas[i+1] mod 2 = 0) and (mas[i+1] mod 3 = 0)
then sum: =sum+1;
перед этим, конечно, нужно заполнить массив. n - число элементов и обнулить сумму. можно заполнить в том же цикле:
sum: =0;
writeln ('число элементов: ');
readln(n);
writeln ('числа: ')
for i: =1 to n do begin
readln (mas[i]);
if (mas[i] mod 2 = 0) and (mas[i] mod 3 = 0) and (mas[i+1] mod 2 = 0) and (mas[i+1] mod 3 = 0)
then sum: =sum+1;
end;
writeln ('sum=',sum);