Видеозапись шестого занятия на Ютубе

На шестой лекции (25 октября) повторили схему программирования «линейный поиск», проходили массивы, константные выражения, постоянные, открытые массивы, оператор LEN. Говорили о «магических» числах в исходных кодах программ, о делении на ноль. Логически вывели необходимость массивов. Написали программу, выводящую последовательность вводимых чисел в обратном порядке.

Задания на практику

Написать функциональную процедуру, которая возвращает:
1) сумму элементов массива;
PROCEDURE Sum(m: ARRAY OF INTEGER): INTEGER;
2) минимальное значение в массиве;
3) встречается ли среди элементов массива число X;
PROCEDURE Sum(m: ARRAY OF INTEGER; x: INTEGER): BOOLEAN;
4) сколько раз число X встречается среди элементов массива;
5) количество положительных чисел в массиве;
6) индекс элемента с максимальным значением в массиве (любого);
PROCEDURE MaxI(m: ARRAY OF INTEGER): INTEGER;
7) индекс последнего ненулевого элемента, или -1, если таких нет;
8) истину, если два массива равны (по значениям элементов);
PROCEDURE Equal(a, b: ARRAY OF INTEGER): BOOLEAN;
9) количество различий в двух массивах (различие — на одинаковой
позиции стоят различные числа);
PROCEDURE Diff(a, b: ARRAY OF INTEGER): INTEGER;
10) Написать процедуру, которая выводит на экран значения
элементов массива в два столбца. Слева отрицательные числа,
справа — неотрицательные. Два варианта: а) оставлять пустые
места, б) честно выводить в два столбца.
## Код:
```
а)          б)
   -5          -5  2
   -2          -2  3
       2       -1  0
       3
   -1
       0
```

11) Написать функциональную процедуру, которая возвращает
количество различных элементов массива.
PROCEDURE Unique(m: ARRAY OF INTEGER): INTEGER;