program mashalukianova; uses crt; const n=12; var mas: array[1..n] of integer; b,i,left,right,temp: integer; begin writeln('*** alphaues is ***'); writeln('*** ok ***'); writeln(); write('введите загадочное число b '); readln(b); writeln('элементы массива: '); {создание и вывод начального массива} randomize; for i: =1 to n do begin mas[i]: =random(100)-50; write (mas[i]: 4); end; writeln(); left: =0; right: =n; while left < > right do {просматриваем массив с концов к середине, пока "левый" и "правый" текущие элементы не встретятся} begin if mas[left+1]< =b then
{если текущий "левый" элемент меньше или равно в, то просто идём смотреть следующий } begin left: =left+1; end else if mas[right]> =b then {если текущий "правый" элемент больше или равно в, то просто идём смотреть следующий }
begin right: =right-1; end else
{иначе меняем "левый" и "правый" местами} begin temp: = mas[left+1]; mas[left+1]: =mas[right]; mas[right]: =temp; left: =left+1; right: =right-1; end; end; writeln(); {вывод массива-результата} for i: =1 to n do begin write (mas[i]: 4); end; writeln(); end.