bruise6
?>

Заполнить массив из 10 элементов случайными числами в интервале 0..99 и отсортировать по возрастанию суммы цифр

Информатика

Ответы

coffeenik20233
Program z1;         var a: array[1..10] of byte;         i,j,k,r: byte; begin         randomize;         for i: =1 to 10 do begin                 a[i]: =random(100);                 write(a[i],' ');                 a[i]: =(a[i] div 10)+(a[i] mod 10)         end;         k: =1; writeln('');         for j: =0 to 18 do begin                 i: =k;                 while i< =10 do begin                         if a[i]=j then begin                                 r: =a[k]; a[k]: =a[i]; a[i]: =r;                                 write(a[k],' ')                         end;                         i: =i+1                 end         end;             readln end.
Назаров588
Const   n = 8;   nmax = 32767; var   a: array[1..n] of integer;   i, t, min: integer; begin   min : = nmax;   for i : = 1 to n do   begin       read(t); a[i] : = t;       if (t > 0) and (t mod 2 = 0) then           if min > t then min : = t   end;   if min < > nmax then       writeln('минимальный положительный четный элемент равен ', min)   else       writeln('в массиве нет четных положительных элементов') end. тестовое решение: 353 638 -1000 -452 320 -18 19 0 минимальный положительный четный элемент равен 320
tsarkovim
Const   m = 6;   n = 9; type   r = record       sum: integer;       nom: integer   end;   vr = array[1..n] of r;   tm = array[1..m, 1..n] of integer; function sumcol(a: tm; k: integer): integer; { сумма элементов в k-м столбце (колонке) матрицы а } var   i, s: integer; begin   s : = 0;   for i : = 1 to m do       s : = s + a[i, k];   sumcol : = s end; procedure swp(var a, b: r); { меняет местами элементы a и b } var   t: r; begin   t : = a; a : = b; b : = t end; procedure shell(var a: vr); { сортировка методом шелла по убыванию } var   i, j, step: integer; begin   step : = n div 2;   while step > 0 do   begin       for j : = n - step downto 1 do       begin           i : = j;           while i < = n - step do           begin               if a[i].sum < a[i + step].sum then swp(a[i], a[i + step]);               i : = i + step           end       end;       step : = step div 2   end end; var   a, c: tm;   b: vr;   i, j: integer; begin   randomize;   writeln('*** исходные элементы массива ***');   for i : = 1 to m do   begin       for j : = 1 to n do       begin a[i, j] : = random(101) - 50; write(a[i, j]: 4) end;       writeln   end;   { формируем вектор сумм по столбцам }   for j : = 1 to n do   begin       b[j].sum : = sumcol(a, j);       b[j].nom : = j;   end;   { сортируем полученный вектор по убыванию сумм }   shell(b);   { осуществляем перестановку во массив с}   for j : = 1 to n do       for i : = 1 to m do c[i, j] : = a[i, b[j].nom];   { копируем содержимое массива с в массив а }   writeln('*** результирующие элементы массива ***');   for i : = 1 to m do   begin       for j : = 1 to n do       begin           a[i, j] : = c[i, j];           write(a[i, j]: 4)       end;       writeln   end end. тестовое решение: *** исходные элементы массива ***   -27  13  13 -15    8  27  28  -1  32   44  36  20 -39  45 -46  29  18  36   -14 -36  -5  35  36 -14  24  31 -19   -42 -34 -44  40  50 -21 -17 -30  37   -38  22 -46    9 -14  42 -10    1  30   41 -41 -21  21  39 -45  18    4  -3 *** результирующие элементы массива ***     8  32  28 -15  -1 -27  13  27  13   45  36  29 -39  18  44  36 -46  20   36 -19  24  35  31 -14 -36 -14  -5   50  37 -17  40 -30 -42 -34 -21 -44   -14  30 -10    9    1 -38  22  42 -46   39  -3  18  21    4  41 -41 -45 -21

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Заполнить массив из 10 элементов случайными числами в интервале 0..99 и отсортировать по возрастанию суммы цифр
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

mrFuz
galinazajceva781
perfectorg
garunkhachatryan
tvtanya80
grenysherg2873
vypolga1347
dakimov
nnbeyo
sorokinae
Владислав-Аветисян217
Mikhailovna1444
aprilsamara2019
Espivak
rakitinat8