<u>PascalABC.NET 3.3.5, сборка 1669 от 21.05.2018</u>
<u>Внимание! Если программа не работает, обновите версию!</u>
begin
var a:=ArrRandom(15,-50,50); a.Println;
Writeln('Отрицательных: ',a.Where(t->t<0).Count);
Writeln('Минимум: ',a.Min);
Writeln('Среднее арифметическое отрицательных: ',
a.Where(t->t<0).Average)
end.
<u>Пример</u>
-16 47 -41 -26 1 3 27 -28 -26 4 -19 -13 -16 38 20
Отрицательных: 8
Минимум: -41
Среднее арифметическое отрицательных: -23.125
Домашние - Собака , кошка , курица.
Полосатые -Тигр , леопард.
Const
N = 30;
var
a: array [1..N] of integer;
i, j, k: integer;
begin
for i := 1 to N do
readln(a[i]);
for i:=1 to N-1 do
if (a[i] mod 13=0) or (a[i+1] mod 13=0) then k:=k+1;
writeln('k=',k)
end.
1. Дискретность.
Вы можете выполнить шаг только после выполнения предыдущего. Например, в алгоритме вычисления 8*3+2 (без скобок) вы сперва выполните умножение(по правилу), и только затем прибавите 2. Иначе ответ неверен.
2.Определенность.
Вы не можете разделить 8 на 3, если Вам ясно сказано: умножьте. Определенность - это четкое прописывание условия задачи.
3.Результативность.
После выполнения действий Вы получите ответ 26 и только 26. Результативность следует из определенности. Благодаря результативности Вы получите "среду", в которой все объекты однозначно определены.
4. Понятность.
(Здесь тоже нужно объяснить? По-моему, свойство само за себя говорит.)
5.Массовость.
Алгоритм может быть применен не единожды. То есть в нашем примере 8*3+2 присутствуют операции умножения и сложения, но они могут встречаться не только в нашем примере, а "пригодны" для множества других задач, в которых требуется умножить или сложить.
Надеюсь, помог.