Осуществить сложение двух случайных матриц - 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;
}

Объяснение кода листинга программы

Код представляет собой программу для сложения двух матриц.

  1. #include - подключает стандартную библиотеку ввода-вывода.
  2. #define LINE 3 - определяет количество строк в матрице.
  3. #define COLUMNS 3 - определяет количество столбцов в матрице.
  4. void enter_matr(int matr[][COLUMNS]){ - функция для ввода значений матрицы.
  5. for(int i = 0; i < LINE; ++i) - цикл по строкам матрицы.
  6. for(int j = 0; j < COLUMNS; ++j){ - цикл по столбцам матрицы.
  7. printf(\n\tmatr[%d][%d] ->, i, j ); - вывод номера строки и столбца.
  8. scanf(%d, &matr[i][j]); - ввод значения в матрицу.
  9. void print_matr(int matr[][COLUMNS]){ - функция для вывода значений матрицы.
  10. for(int i = 0; i < LINE; ++i){ - цикл по строкам матрицы.
  11. for(int j = 0; j < COLUMNS; ++j) - цикл по столбцам матрицы.
  12. printf(%d, matr[i][j]); - вывод значения матрицы с пробелом.
  13. printf(\n); - переход на новую строку.
  14. void sum_matr(int matr[][COLUMNS], int _matr[][COLUMNS]){ - функция для сложения двух матриц.
  15. for(int i = 0; i < LINE; ++i){ - цикл по строкам матрицы.
  16. for(int j = 0; j < COLUMNS; ++j){ - цикл по столбцам матрицы.
  17. int tmp = matr[i][j] + _matr[i][j]; - сложение значений матриц.
  18. printf(  %d, tmp); - вывод промежуточного значения с пробелом.
  19. printf(\n); - переход на новую строку.
  20. int main(void){ - главная функция программы.
  21. int matr[LINE][COLUMNS], _matr[LINE][COLUMNS]; - объявление матриц.
  22. printf(Enter first matrix:); - приглашение для ввода первой матрицы.
  23. enter_matr(matr); - вызов функции для ввода первой матрицы.
  24. printf(\nEnter second matrix:); - приглашение для ввода второй матрицы.
  25. enter_matr(_matr); - вызов функции для ввода второй матрицы.
  26. printf(\nFirst matrix: \n); - приглашение для вывода первой матрицы.
  27. print_matr(matr); - вызов функции для вывода первой матрицы.
  28. printf(\nSecond matrix: \n); - приглашение для вывода второй матрицы.
  29. print_matr(_matr); - вызов функции для вывода второй матрицы.
  30. printf(\nMultiplication matrix: \n); - приглашение для вывода суммы матриц.
  31. sum_matr(matr, _matr); - вызов функции для сложения матриц.
  32. return 0; - завершение программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4.143 из 5
Похожие ответы