Program n1;
var a: array[1..10] of integer;
i: integer;
begin
for i:=1 to 10 do readln(a[i]);
for i:=1 to 10 do if a[i] mod 2=0 then write(a[i],' ');
end.
Ответ:
23 9 3 24
влбаовоаталчлвдаььслсьвлсьальа
<em>var a, b, c, d, i, n :integer;</em>
<em>procedure swap (a, b :integer; c, d :integer);</em>
<em>begin</em>
<em> if a>b then begin c:=a; d:=a; end </em>
<em> else begin c:=b; d:=a; end;</em>
<em>end;</em>
<em>begin</em>
<em> read (a, b);</em>
<em> swap(a, b, a, b);</em>
<em> for i:=1 to a do if (a mod i=0) and (b mod i=0) then c:=i;</em>
<em> write (a*b/c);</em>
<span><em>end.</em></span>
1. Дискретность.
Вы можете выполнить шаг только после выполнения предыдущего. Например, в алгоритме вычисления 8*3+2 (без скобок) вы сперва выполните умножение(по правилу), и только затем прибавите 2. Иначе ответ неверен.
2.Определенность.
Вы не можете разделить 8 на 3, если Вам ясно сказано: умножьте. Определенность - это четкое прописывание условия задачи.
3.Результативность.
После выполнения действий Вы получите ответ 26 и только 26. Результативность следует из определенности. Благодаря результативности Вы получите "среду", в которой все объекты однозначно определены.
4. Понятность.
(Здесь тоже нужно объяснить? По-моему, свойство само за себя говорит.)
5.Массовость.
Алгоритм может быть применен не единожды. То есть в нашем примере 8*3+2 присутствуют операции умножения и сложения, но они могут встречаться не только в нашем примере, а "пригодны" для множества других задач, в которых требуется умножить или сложить.
Надеюсь, помог.