Осуществить сложение двух случайных матриц - C (СИ)
Формулировка задачи:
1. Осуществить сложение двух случайных матриц 2. Задать массив случайных чисел размера M на М. Вывести на экран и рассчитать определитель этой матрицы 3. Создать массив G случайных чисел размера M на М. Удалить из него строку номер которой вводится с клавиатуры.
Решение задачи: «Осуществить сложение двух случайных матриц»
textual
Листинг программы
#include <stdio.h> #define LINE 3 #define COLUMNS 3 void enter_matr(int matr[][COLUMNS]){ for(int i = 0; i < LINE; ++i) for(int j = 0; j < COLUMNS; ++j){ printf("\n\tmatr[%d][%d] -> ", i, j ); scanf("%d", &matr[i][j]); } } void print_matr(int matr[][COLUMNS]){ for(int i = 0; i < LINE; ++i){ for(int j = 0; j < COLUMNS; ++j) printf(" %d ", matr[i][j]); printf("\n"); } } void sum_matr(int matr[][COLUMNS], int _matr[][COLUMNS]){ for(int i = 0; i < LINE; ++i){ for(int j = 0; j < COLUMNS; ++j){ int tmp = matr[i][j] + _matr[i][j]; printf(" %d ", tmp); } printf("\n"); } } int main(void){ int matr[LINE][COLUMNS], _matr[LINE][COLUMNS]; printf("Enter first matrix: "); enter_matr(matr); printf("\nEnter second matrix: "); enter_matr(_matr); printf("\nFirst matrix: \n"); print_matr(matr); printf("\nSecond matrix: \n"); print_matr(_matr); printf("\nMultiplication matrix: \n"); multi_matr(matr, _matr); return 0; }
Объяснение кода листинга программы
Код представляет собой программу для сложения двух матриц.
- #include
- подключает стандартную библиотеку ввода-вывода. - #define LINE 3 - определяет количество строк в матрице.
- #define COLUMNS 3 - определяет количество столбцов в матрице.
- void enter_matr(int matr[][COLUMNS]){ - функция для ввода значений матрицы.
- for(int i = 0; i < LINE; ++i) - цикл по строкам матрицы.
- for(int j = 0; j < COLUMNS; ++j){ - цикл по столбцам матрицы.
- printf(
\n\tmatr[%d][%d] ->
, i, j ); - вывод номера строки и столбца. - scanf(
%d
, &matr[i][j]); - ввод значения в матрицу. - void print_matr(int matr[][COLUMNS]){ - функция для вывода значений матрицы.
- for(int i = 0; i < LINE; ++i){ - цикл по строкам матрицы.
- for(int j = 0; j < COLUMNS; ++j) - цикл по столбцам матрицы.
- printf(
%d
, matr[i][j]); - вывод значения матрицы с пробелом. - printf(
\n
); - переход на новую строку. - void sum_matr(int matr[][COLUMNS], int _matr[][COLUMNS]){ - функция для сложения двух матриц.
- for(int i = 0; i < LINE; ++i){ - цикл по строкам матрицы.
- for(int j = 0; j < COLUMNS; ++j){ - цикл по столбцам матрицы.
- int tmp = matr[i][j] + _matr[i][j]; - сложение значений матриц.
- printf(
%d
, tmp); - вывод промежуточного значения с пробелом. - printf(
\n
); - переход на новую строку. - int main(void){ - главная функция программы.
- int matr[LINE][COLUMNS], _matr[LINE][COLUMNS]; - объявление матриц.
- printf(
Enter first matrix:
); - приглашение для ввода первой матрицы. - enter_matr(matr); - вызов функции для ввода первой матрицы.
- printf(
\nEnter second matrix:
); - приглашение для ввода второй матрицы. - enter_matr(_matr); - вызов функции для ввода второй матрицы.
- printf(
\nFirst matrix: \n
); - приглашение для вывода первой матрицы. - print_matr(matr); - вызов функции для вывода первой матрицы.
- printf(
\nSecond matrix: \n
); - приглашение для вывода второй матрицы. - print_matr(_matr); - вызов функции для вывода второй матрицы.
- printf(
\nMultiplication matrix: \n
); - приглашение для вывода суммы матриц. - sum_matr(matr, _matr); - вызов функции для сложения матриц.
- return 0; - завершение программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д