Язык программирования Си: Заполнить матрицу случайными числа-
ми. Отобразить правую половину матрицы на левую зеркально симметрично
относительно вертикальной оси.

АннаК78 АннаК78    1   31.05.2023 03:19    0

Ответы
Алексвоин124 Алексвоин124  31.05.2023 06:00

Конечно! Вот пример программы на языке программирования Си, которая заполняет матрицу случайными числами и отображает правую половину матрицы на левую зеркально симметрично относительно вертикальной оси:

#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.

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика