{PascalABC}
Program Begenjov1997;
const
n = 30; {Количество элементов массива}
m = 10000; {Максимально возможное значение элемента}
var
a:array[1..n] of integer;
i, sum: integer;
s:string;
begin
s:=' -=Alphaeus=- ';
for i:=1 to 22 do begin write(s[i]); sleep(60) end;
{заполняем массив случайными числами}
writeln; randomize;
for i:=1 to n do
begin
a[i]:=random(m+1);
end;
{Ищем максимальную сумму двух соседних элементов}
sum:=a[1]+a[2];
for i:=2 to n-1 do
if (a[i]+a[i+1]>sum) then sum:=a[i]+a[i+1];
{Заменяем элементы, кратные 3, наденной суммой}
for i:=1 to n do
if (a[i] mod 3 = 0) then a[i]:=sum;
{Вывод}
writeln('Массив А в обратном порядке:');
for i:=0 to n-1 do writeln(a[n-i],' ');
writeln();
writeln('Максимальная сумма двух соседних элементов равна ',sum);
end.
Конечно! Вот пример программы на языке программирования Си, которая заполняет матрицу случайными числами и отображает правую половину матрицы на левую зеркально симметрично относительно вертикальной оси:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define MATRIX_SIZE 6 // Размер матрицы
void fillMatrix(int matrix[][MATRIX_SIZE]) {
srand(time(NULL)); // Инициализация генератора случайных чисел
for (int i = 0; i < MATRIX_SIZE; i++) {
for (int j = 0; j < MATRIX_SIZE; j++) {
matrix[i][j] = rand() % 10; // Генерация случайного числа от 0 до 9
}
}
}
void mirrorMatrix(int matrix[][MATRIX_SIZE]) {
for (int i = 0; i < MATRIX_SIZE; i++) {
for (int j = 0; j < MATRIX_SIZE / 2; j++) {
matrix[i][MATRIX_SIZE - 1 - j] = matrix[i][j]; // Копирование значения из правой половины в левую
}
}
}
void printMatrix(int matrix[][MATRIX_SIZE]) {
for (int i = 0; i < MATRIX_SIZE; i++) {
for (int j = 0; j < MATRIX_SIZE; j++) {
printf("%2d ", matrix[i][j]);
}
printf("\n");
}
}
int main() {
int matrix[MATRIX_SIZE][MATRIX_SIZE];
fillMatrix(matrix);
printf("Исходная матрица:\n");
printMatrix(matrix);
mirrorMatrix(matrix);
printf("\nМатрица с отраженной правой половиной:\n");
printMatrix(matrix);
return 0;
}
В этом примере мы используем функции fillMatrix для заполнения матрицы случайными числами, mirrorMatrix для отображения правой половины матрицы на левую, и printMatrix для вывода матрицы на экран. Размер матрицы задан константой MATRIX_SIZE, которую можно изменить по необходимости.
Программа сначала заполняет матрицу случайными числами с функции fillMatrix. Затем она выводит исходную матрицу с функции printMatrix. После этого вызывается функция mirrorMatrix, которая отражает правую половину матрицы на левую. Наконец, программа выводит матрицу с отраженной правой половиной с функции printMatrix.