1. примерно так учат писать программы в const nn=100; // предельное кол-во элементов в массиве type mas=array[1..nn] of integer; procedure randomarray(var a: mas; n,p,q: integer); // заполняет первые n элементов массива a // случайными числами из интервала [p; q] var i: integer; begin for i: =1 to n do a[i]: =random(q-p+1)+p end; procedure printarray(a: mas; n: integer); // выводит на экран первые n элементов массива a var i: integer; begin for i: =1 to n do write(a[i],' '); writeln end; procedure sortbydescending(var a: mas; n: integer); // сортирует по невозрастанию первые n элементов массива a. // элементарная обменная сортировка var i,j,t: integer; begin for i: =1 to n-1 do for j: =1 to n-1 do if a[j]< a[j+1] then begin t: =a[j]; a[j]: =a[j+1]; a[j+1]: =t end end; // основная программа var i,n1,n2,n3,x,y: integer; a,b,c: mas; begin randomize; write('кол-во элементов в массиве и границы интервала из значений: '); read(n1,x,y); randomarray(a,n1,x,y); write('кол-во элементов в массиве и границы интервала из значений: '); read(n2,x,y); randomarray(b,n2,x,y); write('первый массив: '); printarray(a,n1); write('второй массив: '); printarray(b,n2); writeln('объединенный массив, отсортированный по невозрастанию'); n3: =n1+n2; for i: =1 to n1 do c[i]: =a[i]; for i: =1 to n2 do c[i+n1]: =b[i]; sortbydescending(c,n3); printarray(c,n3) end. тестовое решение кол-во элементов в массиве и границы интервала из значений: 8 10 60 кол-во элементов в массиве и границы интервала из значений: 6 30 90 первый массив: 41 56 14 57 52 51 30 54 второй массив: 76 36 44 39 68 38 объединенный массив, отсортированный по невозрастанию 76 68 57 56 54 52 51 44 41 39 38 36 30 14 2. на самом деле эту же можно написать гораздо короче // pascalabc.net 3.1, сборка 1246 от 23.05.2016 begin var n1,n2,x,y: integer; write('кол-во элементов в массиве и границы интервала из значений: '); read(n1,x,y); var a: =arrrandom(n1,x,y); write('кол-во элементов в массиве и границы интервала из значений: '); read(n2,x,y); var b: =arrrandom(n2,x,y); write('первый массив: '); a.println; write('второй массив: '); b.println; writeln('объединенный массив, отсортированный по невозрастанию'); var c: =(a+b).sorteddescending; c.println end.
irinaastapova2011
01.05.2021
Для сдвига влево на 1 шаг алгоритм такой: 1) запомнить значение 1 элемента массива во временную переменную 2) организовать цикл i от 1 до (размер массива - 1) 3) i-тому элементу массива присвоить значение (i+1)-ого 4) конец цикла 5) последнему элементу присвоить сохранённое во временной переменной для сдвига на n шагов применять данный алгоритм n раз. для сдвига вправо: 1) запомнить значение последнего элемента массива во временную переменную 2) организовать цикл i от (размер массива) до 2 3) i-тому элементу массива присвоить значение (i-1)-ого 4) конец цикла 5) первому элементу присвоить сохранённое
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Сколько кбайт составляет сообщение, содержащее 12288 бит?
12288 / 8 = 1536 байт 1536 / 1024 = 1,5 кбайта