Суть программы Input (A[255], input.txt); // Вводим из файла строку в массив А[255] N = 0; NMax = 0; // Счетчик удачных дней M = 0; // Счетчик длины массива (он может быть и меньше 255) Цикл по i от 1 до 255 If (A[i] <> "У") and (A[i] <> "Н") then M = i - 1; // Как только мы встретили значение, не равное ни У ни Н, так считаем это концом. Конец цикла по i If A[1] = "У" then N = 1 // Проверяем 1-ую ячейку Цикл по i от 1 до M-1 if (A[i] = "Н") and (A[i+1] = "У") then N = 1; // Начало серии У if (A[i] = "У") and (A[i+1] = "У") then N = N + 1; // Продолжение серии У if (A[i] = "У") and (A[i+1] = "Н") then // Окончание серии У if N >= NMax then NMax = N; // Проверяем длину серии end if Конец Цикла по i Output (output.txt, NMax) // вывод максимальной длины серии в файл. Конец программы
//PascalABC.NET (версия 3.1, сборка 1196 от 09.03.2016) function Transpose(a: array[,] of integer): array[,] of integer; //Поворот на 90гр по часовой стрелке begin var m := Length(a, 0); var n := Length(a, 1); Result := new integer[n, m]; for var i := 0 to n-1 do begin for var j := 0 to m-1 do Result[i, j] := a[m-1-j, i]; end; end;
begin var n := ReadInteger('Введите n:'); //Заполнение матрицы NxN сл. числами и вывод на экран var a :=MatrixRandom(n, n); for var i:=0 to n-1 do begin for var j:=0 to n-1 do Print(a[i,j]); println; end; println;
Println('поворот влево на 90 гр'); var b := Transpose(a); b:=Transpose(b); b:=Transpose(b); for var i:=0 to n-1 do begin for var j:=0 to n-1 do Print(b[i,j]); println; end; println;
Println('поворот вправо на 90гр'); b := Transpose(a); for var i:=0 to n-1 do begin for var j:=0 to n-1 do Print(b[i,j]); println; end; println;
Println('поворот на 180 гр'); b := Transpose(a); b := Transpose(b); for var i:=0 to n-1 do begin for var j:=0 to n-1 do Print(b[i,j]); println; end; end.
Input (A[255], input.txt); // Вводим из файла строку в массив А[255]
N = 0; NMax = 0; // Счетчик удачных дней
M = 0; // Счетчик длины массива (он может быть и меньше 255)
Цикл по i от 1 до 255
If (A[i] <> "У") and (A[i] <> "Н") then M = i - 1;
// Как только мы встретили значение, не равное ни У ни Н, так считаем это концом.
Конец цикла по i
If A[1] = "У" then N = 1 // Проверяем 1-ую ячейку
Цикл по i от 1 до M-1
if (A[i] = "Н") and (A[i+1] = "У") then N = 1; // Начало серии У
if (A[i] = "У") and (A[i+1] = "У") then N = N + 1; // Продолжение серии У
if (A[i] = "У") and (A[i+1] = "Н") then // Окончание серии У
if N >= NMax then NMax = N; // Проверяем длину серии
end if
Конец Цикла по i
Output (output.txt, NMax) // вывод максимальной длины серии в файл.
Конец программы