===== PascalABC.NET =====
begin
var a: array[1..9] of integer;
for var i := 0 to 2 do
begin
var j := 3 * i + 1;
a[j] := j + 2;
a[j + 1] := Random(50) mod a[j];
a[j + 2] := a[j] + a[ j + 1];
Print(a[j], a[j + 1], a[j + 2])
end
end.
1/32 Мбайта = 1024/32 Кбайт = 32 Кбайт = 1024*32 Байт = 1024*32*8 бит
Па<span>мять для одного символа = 1024*32*8/65536 = 4 бита
Размер алфавита = 2^4 = 16 символов</span>
? - один произвольный символ(обязательно)
*- любая или пустая последовательность символов
?ese*ie.?t* к этой маске подходит A)seseie.ttx, так как во всех остальных случаях не хватает символа к первому вопросу в файле.
<em>// PascalABC.NET 3.3, сборка 1611 от 06.01.2018</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
procedure SortInsert(a:array of integer);
// сортировка простыми вставками по убыванию
begin
for var i:=1 to a.Length-1 do
if a[i-1]<a[i] then begin
var (t,j):=(a[i],i-1);
while (j>=0) and (a[j]<t) do begin
a[j+1]:=a[j]; j-=1
end;
a[j+1]:=t
end
end;
begin
var (m,n):=ReadInteger2('Количество строк и столбцов в массиве:');
Writeln('*** Исходный массив ***');
var a:=MatrRandom(m,n,-99,99);
a.Println(4); Writeln(4*a.ColCount*'-');
// приступаем к сортировке четных строк (строк с нечетными индексами)
var row:=1;
while row<=m-1 do begin
var v:=a.Row(row);
SortInsert(v);
a.SetRow(row,v);
row+=2
end;
Writeln('*** Сортированный массив ***'); a.Println(4) // вывод
end.
<u>Пример</u>
Количество строк и столбцов в массиве: 5 9
*** Исходный массив ***
-13 -53 35 84 72 44 76 -78 -93
-86 -82 90 -35 -16 55 -99 -24 -63
64 -29 -34 51 89 4 51 37 80
7 19 81 41 34 -49 64 1 -59
51 -80 71 -13 19 9 -90 7 6
------------------------------------
*** Сортированный массив ***
-13 -53 35 84 72 44 76 -78 -93
90 55 -16 -24 -35 -63 -82 -86 -99
64 -29 -34 51 89 4 51 37 80
81 64 41 34 19 7 1 -49 -59
51 -80 71 -13 19 9 -90 7 6