acre5422какаха
26.12.2022 14:09

Текст занимает полных 8 страниц. на каждой странице размещается 32 строк по 64 символов в строке. каждый символ кодируется 2 байтами. какой объём займёт этот текст в кбайтах? решать в степенях 2. записывать дано, решение, ответ. степень можно изобразить любым

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
pedyxa12
28.03.2021 00:01
function nums(a: integer): System.uint64; //очень_длинное_число, 10 цифр же, кортеж не стал лепить, не школьный это тип, а массивы не очень-то сравниваться любят
var
  num: array [0..9] of byte;
begin
  foreach c: char in a.ToString() do
    num[StrToInt(c)] += 1;
  result := System.uint64.Parse(
            String.Concat(num[0], num[1], num[2], num[3], num[4],
                          num[5], num[6], num[7], num[8], num[9]));
end;

var
     a: array [1..5] of System.uint64;
  i, j: byte;

begin
  for i := 1 to 5 do
    readln(a[i]);
  for i := 1 to 4 do
    for j := i + 1 to 5 do
      if (nums(a[i]) = nums(a[j])) then
        writeln(a[i], ' <-> ', a[j]);
end.

P.S. Начал было перегружать оператор сравнивания, но головная боль лишняя, да и тоже не школьное это
0,0(0 оценок)
Ответ:
QueenMarceline
06.01.2021 01:28
Type
  M = array[,] of integer;

procedure Swap(var a: M; i: integer; j: integer);
//обменивает местами элементы массива a[i,i] и a[i,j]
var
  buff: integer;
begin
  if i <> j then begin
    buff := a[i, i]; a[i, i] := a[i, j]; a[i, j] := buff
  end
end;

function GetColMin(a: M; i: integer): integer;
// возвращает номер столбца, в котором найден минимальный элемент
// по строке с номером i, т.е. a[i,?]=min
var
  j, vmin, jm: integer;
begin
  vmin := 32766;
  for j := 0 to Length(a, 1) - 1 do
    if vmin > a[i, j] then begin
      vmin := a[i, j]; jm := j
    end;
  Result := jm
end;

procedure SwapMatrix(var a: M);
// меняет местами в массиве a[n,n] минимальный по строке элемент с
// элементом, лежащим на главной диагонали.
// Обращается к функции GetColMin и процедуре Swap
var
  i: integer;
begin
  for i := 0 to Length(a, 0) - 1 do Swap(a, i, GetColMin(a, i))
end;

procedure WriteMas(a: M; title: string);
// выводит заголовок, а потом массив построчно
var
  i, j, n: integer;
begin
  n := Length(a, 0) - 1;
  writeln(title);
  for i := 0 to n do
  begin
    for j := 0 to n do write(a[i, j]:5);
    writeln
  end
end;

procedure CreateMas(var a: M; n: integer; p: integer; q: integer);
// Создает массив a[0..n-1,0..n-1] и заполняет его
// данными используя датчик случайных чисел с мощностью "р"
// и минимальным значением q
var
  i, j: integer;
begin
  Randomize;
  SetLength(a, n, n);
  for i := 0 to n - 1 do
    for j := 0 to n - 1 do
      a[i, j] := random(p) + q
end;

const
  n1 = 3;
  n2 = 5;
  n3 = 8;

var
  a, b, c: M;

begin
  CreateMas(a, n1, 100, -50);
  WriteMas(a, 'Исходный массив а');
  SwapMatrix(a);
  WriteMas(a, 'Результирующий массив а');
  CreateMas(b, n2, 300, -150);
  WriteMas(b, 'Исходный массив b');
  SwapMatrix(b);
  WriteMas(b, 'Результирующий массив b');
  CreateMas(c, n3, 500, -250);
  WriteMas(c, 'Исходный массив c');
  SwapMatrix(c);
  WriteMas(c, 'Результирующий массив c');
end.

Тестовый прогон:

Исходный массив а
   14   23    7
  -50   31   36
  -39  -43  -38
Результирующий массив а
    7   23   14
   31  -50   36
  -39  -38  -43
Исходный массив b
  -91    6  -21 -139 -141
  130  -99   44  131  143
   93    5   97 -111   43
 -113   15  125   88   31
 -115  -39   27  124  144
Результирующий массив b
 -141    6  -21 -139  -91
  130  -99   44  131  143
   93    5 -111   97   43
   88   15  125 -113   31
  144  -39   27  124 -115
Исходный массив c
 -234  211  207 -131  151 -228  197 -163
  147    5  180 -135 -181  217 -178   -3
  178 -142 -149  -44 -195 -224 -187 -173
  -24   62   28 -134  -11 -216  -59   83
   62  -86   48  152  -44  -49 -218   92
   91  -60  201  206 -160 -135 -131   77
  161 -184 -204  113 -181  199  223  240
  147  129  143 -162   -6   80   98  113
Результирующий массив c
 -234  211  207 -131  151 -228  197 -163
  147 -181  180 -135    5  217 -178   -3
  178 -142 -224  -44 -195 -149 -187 -173
  -24   62   28 -216  -11 -134  -59   83
   62  -86   48  152 -218  -49  -44   92
   91  -60  201  206 -135 -160 -131   77
  161 -184  223  113 -181  199 -204  240
  147  129  143  113   -6   80   98 -162
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота