*8.5(代数:两个矩阵相加)编写两个矩阵相加的方法,编写一个测试程序,提示用户输入两个3*3的矩阵,然后显示它们的和

  • 题目
    • 题目描述与运行示例
    • 破题
  • 代码

题目

题目描述与运行示例

8.5(代数:两个矩阵相加)编写两个矩阵相加的方法:
public static double[][] addMatrix(double[][] a, double[][] b)
编写一个测试程序,提示用户输入两个3
3的矩阵,然后显示它们的和

两个矩阵能相加的前提和相加方法:
两个矩阵具有相同的维数,且元素类型相同或兼容
矩阵对应位置元素相加
运行示例:

Enter matrix1: 1 2 3 4 5 6 7 8 9
Enter matrix2: 0 2 4 1 4.5 2.2 1.1 4.3 5.2
The matrices are added as follows
1.0 2.0 3.0      0.0 2.0 4.0      1.0 4.0 7.0
4.0 5.0 6.0   +  1.0 4.5 2.2   =  5.0 9.5 8.2
7.0 8.0 9.0      1.1 4.3 5.2      8.1 12.3 14.2

破题

  1. 主方法:声明3个3*3的二维数组(矩阵)
  2. 主方法:获取用户输入,输出提示语句,通过循环给第一个数组赋值
  3. 主方法:获取用户输入,输出提示语句,通过循环给第二个数组赋值
  4. 主方法:调用方法addMatrix,传入两个数组,用第三个数组接收返回值
  5. 主方法:输出语句
  6. 主方法:输出三个数组
  7. addMatrix方法:声明一个3*3的二维数组
  8. addMatrix方法:使用双层循环遍历传入的a和b两个数组,并将对应位置的元素相加并赋值给刚刚声明的数组
  9. addMatrix方法:返回刚刚声明的数组

代码

import java.util.Scanner;public class Test8_5 {public static void main(String[] args) {//1. 主方法:声明3个3*3的二维数组(矩阵)double[][] a = new double[3][3];double[][] b = new double[3][3];double[][] c = new double[3][3];//2. 主方法:获取用户输入,输出提示语句,通过循环给第一个数组赋值Scanner input = new Scanner(System.in);System.out.print("Enter matrix1: ");for (int row = 0 ; row < a.length ; row++){for (int col = 0 ; col < a[0].length ; col++){a[row][col] = input.nextDouble();}}//3. 主方法:获取用户输入,输出提示语句,通过循环给第二个数组赋值System.out.print("Enter matrix2: ");for (int row = 0 ; row < b.length ; row++){for (int col = 0 ; col < b[0].length ; col++){b[row][col] = input.nextDouble();}}//4. 主方法:调用方法addMatrix,传入两个数组,用第三个数组接收返回值c = addMatrix(a, b);//5. 主方法:输出语句System.out.println("The matrices are added as follows");//6. 主方法:输出三个数组for (int row = 0 ; row < 3 ; row++){//打印数组a元素for (int col = 0 ; col < 3 ; col++){System.out.print(a[row][col] + " ");}//打印数组a与数组b之间的空格与+if (row != 1) {System.out.print("     ");} else {System.out.print("  +  ");}//打印数组bfor (int col = 0 ; col < 3 ; col++){System.out.print(b[row][col] + " ");}//打印数组b与数组c之间的空格和=if (row != 1) {System.out.print("     ");} else {System.out.print("  =  ");}for (int col = 0 ; col < 3 ; col++){System.out.print(c[row][col] + " ");}System.out.println();}}public static double[][] addMatrix(double[][] a, double[][] b){//7. addMatrix方法:声明一个3*3的二维数组double[][] c = new double[a.length][a[0].length];//8. addMatrix方法:使用双层循环遍历传入的a和b两个数组,并将对应位置的元素相加并赋值给刚刚声明的数组for (int row = 0 ; row < c.length ; row++){for (int col = 0 ; col < c[0].length ; col++){c[row][col] = a[row][col] + b[row][col];}}//9. addMatrix方法:返回刚刚声明的数组return c;}
}

Java黑皮书课后题第8章:*8.5(代数:两个矩阵相加)编写两个矩阵相加的方法,编写一个测试程序,提示用户输入两个3*3的矩阵,然后显示它们的和相关推荐

  1. Java黑皮书课后题第7章:**7.34(对字符串中的字符排序)使用以下方法头编写一个方法,返回一个排序好的字符串。编写一个测试程序,提示用户输入一个字符串,显示排序好的字符串

    **7.34(对字符串中的字符排序)使用以下方法头编写一个方法,返回一个排序好的字符串.编写一个测试程序,提示用户输入一个字符串,显示排序好的字符串 题目 题目描述 破题 代码 运行实例 题目 题目描 ...

  2. Java黑皮书课后题第6章:*6.23(指定字符的出现次数)使用下面的方法头编写一个方法,找到一个字符串中指定字符的出现次数。编写一个测试程序,提示用户输入一个字符串以及一个字符,显示该字符出现次数

    6.23(指定字符的出现次数)使用下面的方法头编写一个方法,找到一个字符串中指定字符的出现次数.编写一个测试程序,提示用户输入一个字符串以及一个字符,显示该字符出现次数 题目 题目描述 破题 代码 运 ...

  3. Java黑皮书课后题第7章:*7.12(倒置数组)7.7节中的reverse方法通过复制到新数组实现倒置。改写方法将参数中传递的数组倒置,并返回该数组。编写一个测试程序,输入10个数字,倒置它们并显示

    7.12(倒置数组)7.7节中的reverse方法通过复制到新数组实现倒置.改写方法将参数中传递的数组倒置,并返回该数组.编写一个测试程序,输入10个数字,倒置它们并显示 题目 题目描述 破题 代码 ...

  4. Java黑皮书课后题第5章:**5.21(金融应用:比较不同利率下的贷款)编写程序,让用户输入输入贷款总额和以年为单位的贷款期限,然后显示利率从5%到8%每次递增1/8的各种利率下,每月支付额和总支付

    **5.21(金融应用:比较不同利率下的贷款)编写程序,让用户输入输入贷款总额和以年为单位的贷款期限,然后显示利率从5%到8%每次递增1/8的各种利率下,每月支付额和总支付 题目 题目概述 运行示例 ...

  5. Java黑皮书课后题第6章:*6.16(一年的天数)使用下面的方法体编写一个方法,返回一年的天数。编写一个测试程序,显示从2000年到2020年间每年的天数

    *6.16(一年的天数)使用下面的方法体编写一个方法,返回一年的天数.编写一个测试程序,显示从2000年到2020年间每年的天数 题目 题目描述 破题 本题代码 运行示例 题目 题目描述 *6.16( ...

  6. Java黑皮书课后题第5章:5.26(计算e)下面的数列可以近似计算e,编写程序显示i=10000、20000、30000…100000时值

    5.26(计算e)下面的数列可以近似计算e,编写程序显示i=10000.20000.30000-100000时e值 题目 题目概述 代码 运算结果 题目 题目概述 5.26(计算e)下面的数列可以近似 ...

  7. Java黑皮书课后题第1章:1.13(代数:求解2*2线性方程组)编写程序,求解以下方程组并显示x和y的值 3.4x+50.2y=44.5 2.1x+0.55y=5.9

    Java黑皮书课后题第1章:(代数:求解2*2线性方程组) 题目 题目描述 破题 代码块 方法评析 赘述 修改日志 题目 题目描述 求x和y值: 3.4x+50.2y=44.5 2.1x+0.55y= ...

  8. Java黑皮书课后题第11章:11.2(Person Student Employee Faculty Staff类)设计一个名为Person的类及其两个名为Student和Employee的子类

    Java黑皮书课后题第11章:11.2(Person Student Employee Faculty Staff类) 题目 缺陷 UML图 代码 Test02_MyDate.java:用于参考的My ...

  9. Java黑皮书课后题第10章:**10.25(新的字符串split方法)String类中的split方法会返回一个字符串数组,该数组是由分隔符分隔开的子串构成的

    Java黑皮书课后题第10章:**10.25(新的字符串split方法) 题目 代码 运行实例 题目 代码 public class Test25 {public static String[] sp ...

  10. Java黑皮书课后题第10章:10.21(被5或6整除)找出能被5或6整除的大于Long.MAX_VALUE的前10个数字

    Java黑皮书课后题第10章:10.21(被5或6整除)找出能被5或6整除的大于Long.MAX_VALUE的前10个数字 题目 代码 结果 题目 都在上面 代码 import java.math.B ...

最新文章

  1. Windows 11 用户“怒了” :微软发推炫耀 3D 海龟表情包引争议
  2. centos7升级php版本
  3. Shiro 那点事儿
  4. 阿里“三活”数据中心实践经验:没人能做,我们就自己做
  5. WinXP中鲜为人知的28项隐藏功能
  6. Linux/Unix/Mac 系统GIT密码存储
  7. 电脑生成siri语音_米家智能台灯1S全新升级,支持小爱和Siri的语音控制
  8. opencv 阈值分割_用 OpenCV 去除图片中的水印,骚操作!
  9. Spark SQL将rdd转换为数据集-以编程方式指定模式(Programmatically Specifying the Schema)
  10. 【Python】高级函数
  11. [收藏] 将 DTS 用于业务智能解决方案的最佳实践
  12. python视频转化_python实现视频读取和转化图片
  13. 编辑PDF时怎样删除文件中的图片
  14. matlab中的clc命令和clear命令
  15. java 区分鼠标左键单击和双击
  16. RKRK3399平台开发系列讲解(其他篇)1.29、查看显示时钟
  17. 开启snapshot的操作失败 如何解决——两种办法
  18. alevel计算机教材答案,alevel计算机教材电子版及内容和目录大纲
  19. pyqt5中QGraphicsView弹出菜单
  20. chosen插件 select 替换 option

热门文章

  1. python接口自动化接口依赖_Python接口自动化之mock模块简单使用
  2. 图解ARP协议(二)ARP攻击原理与实践
  3. 二叉树已知先序和中序输出后序
  4. 云速搭部署挂载CPFS的E-HPC
  5. 独家下载!《零售数据中台通关指南》,带你玩转新零售
  6. 0.3秒定位解剖位置、定位精度提升超2.3%!
  7. 阿波罗登月51周年,程序员用DAIN技术还原阿波罗登月高清影像,效果震撼
  8. 盒马鲜生,快而准确的秘密!
  9. 北京沙龙报名 | 关于Dubbo开源的那些事儿
  10. 8位数控分频器的设计_8位数控分频器