当前位置: 首页 > news >正文

矩阵加法        ‌‍‎‏

矩阵加法

      • C语言代码
      • C++ 语言代码
      • Java语言代码
      • Python语言代码


💐The Begin💐点点关注,收藏不迷路💐

输入两个n行m列的矩阵A和B,输出它们的和A+B。

输入

第一行包含两个整数n和m,表示矩阵的行数和列数。1 <= n <= 100,1 <= m <= 100。<
接下来n行,每行m个整数,表示矩阵A的元素。
接下来n行,每行m个整数,表示矩阵B的元素。
相邻两个整数之间用单个空格隔开,每个元素均在1~1000之间。

输出

n行,每行m个整数,表示矩阵加法的结果。相邻两个整数之间用单个空格隔开

样例输入

3 3
1 2 3
1 2 3
1 2 3
1 2 3
4 5 6
7 8 9

样例输出

2 4 6
5 7 9
8 10 12

提示

输入两个n行m列的矩阵A和B,输出它们的和A+B。

先获取矩阵的行数和列数,然后分别读取两个矩阵的元素,接着通过两层循环遍历矩阵的每个元素位置,将两个矩阵对应位置的元素相加并存入结果矩阵(或列表)中,最后按照矩阵的格式输出相加后的结果矩阵。

C语言代码

#include <stdio.h>int main() {int n, m;scanf("%d %d", &n, &m);  // 读取矩阵的行数n和列数mint matrixA[n][m];  // 定义二维数组来存储矩阵A的元素int matrixB[n][m];  // 定义二维数组来存储矩阵B的元素int result[n][m];  // 定义二维数组来存储矩阵相加的结果// 1. 读取矩阵A的元素for (int i = 0; i < n; i++) {for (int j = 0; j < m; j++) {scanf("%d", &matrixA[i][j]);  // 逐行逐列读取矩阵A的元素}}// 2. 读取矩阵B的元素for (int i = 0; i < n; i++) {for (int j = 0; j < m; j++) {scanf("%d", &matrixB[i][j]);  // 逐行逐列读取矩阵B的元素}}// 3. 计算矩阵A和矩阵B对应元素相加,得到结果矩阵for (int i = 0; i < n; i++) {for (int j = 0; j < m; j++) {result[i][j] = matrixA[i][j] + matrixB[i][j];  // 对应位置元素相加并存入结果矩阵}}// 4. 输出结果矩阵for (int i = 0; i < n; i++) {for (int j = 0; j < m; j++) {printf("%d ", result[i][j]);  // 逐行逐列输出结果矩阵的元素}printf("\n");}return 0;
}

C++ 语言代码

#include <iostream>
using namespace std;int main() {int n, m;cin >> n >> m;  // 输入矩阵的行数n和列数mint matrixA[n][m];  // 创建二维数组存储矩阵A的元素int matrixB[n][m];  // 创建二维数组存储矩阵B的元素int result[n][m];  // 创建二维数组存储矩阵相加的结果// 1. 输入矩阵A的元素for (int i = 0; i < n; i++) {for (int j = 0; j < m; j++) {cin >> matrixA[i][j];  // 逐行逐列输入矩阵A的元素}}// 2. 输入矩阵B的元素for (int i = 0; i < n; i++) {for (int j = 0; j < m; j++) {cin >> matrixB[i][j];  // 逐行逐列输入矩阵B的元素}}// 3. 计算矩阵A和矩阵B对应元素相加,得到结果矩阵for (int i = 0; i < n; i++) {for (int j = 0; j < m; j++) {result[i][j] = matrixA[i][j] + matrixB[i][j];  // 将对应位置元素相加,存入结果矩阵}}// 4. 输出结果矩阵for (int i = 0; i < n; i++) {for (int j = 0; j < m; j++) {cout << result[i][j] << " ";  // 逐行逐列输出结果矩阵元素}cout << endl;}return 0;
}

Java语言代码

import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int n = scanner.nextInt();  // 获取矩阵的行数nint m = scanner.nextInt();  // 获取矩阵的列数mint[][] matrixA = new int[n][m];  // 定义二维数组存储矩阵A的元素int[][] matrixB = new int[n][m];  // 定义二维数组存储矩阵B的元素int[][] result = new int[n][m];  // 定义二维数组存储矩阵相加的结果// 1. 读取矩阵A的元素for (int i = 0; i < n; i++) {for (int j = 0; j < m; j++) {matrixA[i][j] = scanner.nextInt();  // 逐行逐列读取矩阵A的元素并存入数组}}// 2. 读取矩阵B的元素for (int i = 0; i < n; i++) {for (int j = 0; j < m; j++) {matrixB[i][j] = scanner.nextInt();  // 逐行逐列读取矩阵B的元素并存入数组}}// 3. 计算矩阵A和矩阵B对应元素相加,得到结果矩阵for (int i = 0; i < n; i++) {for (int j = 0; j < m; j++) {result[i][j] = matrixA[i][j] + matrixB[i][j];  // 对应位置元素相加,结果存入结果矩阵}}// 4. 输出结果矩阵for (int i = 0; i < n; i++) {for (int j = 0; j < m; j++) {System.out.print(result[i][j] + " ");  // 逐行逐列输出结果矩阵元素}System.out.println();}}
}

Python语言代码

n, m = map(int, input().split())  // 获取输入的矩阵行数n和列数m
matrixA = [list(map(int, input().split())) for _ in range(n)]  // 获取矩阵A的元素,构建二维列表
matrixB = [list(map(int, input().split())) for _ in range(n)]  // 获取矩阵B的元素,构建二维列表result = []  // 创建一个空列表,用于存储矩阵相加的结果# 计算矩阵A和矩阵B对应元素相加,得到结果矩阵
for i in range(n):row = []  // 为结果矩阵的每一行创建一个空列表for j in range(m):row.append(matrixA[i][j] + matrixB[i][j])  // 对应位置元素相加,添加到当前行列表result.append(row)  // 将当前行列表添加到结果矩阵列表中# 输出结果矩阵
for row in result:print(" ".join(map(str, row)))  // 将每行的整数列表转换为字符串,用空格连接后输出

在这里插入图片描述


💐The End💐点点关注,收藏不迷路💐
http://www.lryc.cn/news/497079.html

相关文章:

  • yarn : 无法加载文件 E:\node\node_global\yarn.ps1,因为在此系统上禁止运行脚本
  • 详解C++类与对象(四)
  • Pandas处理和分析嵌套JSON数据:从字符串到结构化DataFrame
  • 【强化学习入门笔记】1.5 贝尔曼最优公式
  • 编码问题技术探讨:IDE全局GBK与项目UTF-8引发的中文乱码
  • SpringBoot两天
  • 自动化立体仓库项目任务调度系统中任务流程可视化实现
  • 计算机毕业设计hadoop+spark民宿推荐系统 民宿数据分析可视化大屏 民宿爬虫 民宿大数据 知识图谱 机器学习 大数据毕业设计
  • Java中OGNL表达式语言的使用
  • [HCTF 2018]WarmUp-滑稽
  • JAVAWeb——maven、SpringBoot、HTTP、Tomcat
  • 【C++】—— set 与 multiset
  • 蓝桥杯-扫雷
  • 黑马JavaWeb-day06、07、08(SQL部分) _
  • 三十五:Wireshark的捕获过滤器
  • 第9章 大模型的有害性(上)
  • 遗传算法与深度学习实战(26)——编码卷积神经网络架构
  • Linux无线网络配置工具:iwconfig vs iw
  • RabbitMQ介绍及安装
  • 借助 AI 工具,共享旅游-卡-项目助力年底增收攻略
  • Docker Compose 和 Kubernetes 之间的区别?
  • node.js常用的模块和中间件?
  • Llama模型分布式训练(微调)
  • Matlab模块From Workspace使用数据类型说明
  • LangChain学习笔记(一)-LangChain简介
  • k8s,声明式API对象理解
  • KubeBlocks v0.9.2发布啦!支持容器镜像滚动更新、MySQL支持Jemalloc...快来升级体验更多新功能!
  • Linux-虚拟环境
  • window系统下的git怎么在黑窗口配置代理
  • 网络和通信详解