program laba_1; uses crt; var z, count, countz : integer; {объявляем переменные z- заданный элемент, с которым будим сравнивать, count количество элементов в векторе, countz количество элементов в векторе запр. элементов } i, j, k : byte; {вспомогательные переменные для циклов и счётчика для вектора с выходными данными} nn : boolean; {переменная, имеющая тока два значения, или true (истина) или false (ложь) удобна для использования в условиях if} vektor : array [1..100] of integer; {задаём вектор с сотней элементов, типа с запасом, памяти всё равно хренова куча} vektore : array [1..100] of integer; {задаём вектор, в него будут записываться выходные данные} vektzapr : array [1..100] of integer; {задаём в него будут записываться запрещённые элементы} procedure delnul (var v : array of integer; var c : integer); {процедура, удаляющая элементы вектора, равные нулю, в параметрах передаются вектор, и количество элементов в нём} var x,y : integer; {заводим пару элементов, для счётчиков цикла} begin for x:=1 to c do {цикл по х от 1 до конца вектора} if v[x]=0 then {если этот элемент равен нулю, то} for y:=x to c do v[y]:=v[y+1]; {сдвигаем все элементы, следующие за ним на 1 влево} x:=1; while v[x]<>0 do x:=x+1; {подсчитываем количество оставшихся ненулевых элементов] c:=x; {изминяем количество элементов на получившееся} end; begin clrscr; {очищаем экран} write ('razmernost: '); {вывод строки на экран} readln (count); {считывам значение для переменной count} for i:=1 to count do {цикл от 1 до count} begin write (i,' element: '); {выводим на экран строку и значение переменной i} readln (vektor[i]); {считываем значение для очередного элемента вектора} end; delnul (vektor, count); {удаляем все нулевые элементы в векторе} write ('razmernost zapr: '); {вывод строки на экран} readln (countz); {считывам значение для переменной countz} for i:=1 to countz do begin write (i,' element: '); {выводим на экран строку и значение переменной i} readln (vektzapr[i]); {считываем значение для очередного элемента вектора запрещённых элементов} end; j:=0; {присваиваем 0 счётчику текущего элемента для выходного вектора} nn:= true; {присваиваем переменной значеное true (истина) сюда будем писать, является ли элемент вектора запрещённым} for i:=1 to count do {цикл от 1 до count} begin for k:=1 to countz do {цикл от 1 до countZ} if vektor[i]=vektzapr[k] then nn:= false; {если элемент вектора оказывается запрещённым, присваиваем переменной nn значение false} if nn then {если элемент не запрещённый} begin j:=j+1; {увеличиваем счётчик эдементов в выходном векторе} vektore[j]:=vektor[i]; end; nn:=true; {присваиваем nn значение по умолчанию true} end; for i:=1 to j do {цикл от 1 до j, т.е. по количеству элементов в выходном векторе} begin writeln (vektore[i]); {выводим элементы вектора попарно} end; readln; {ждём пака юзер ни тыркнет на ентер} end.