Java黑皮书课后题第8章:*8.5(代数:两个矩阵相加)编写两个矩阵相加的方法,编写一个测试程序,提示用户输入两个3*3的矩阵,然后显示它们的和
*8.5(代数:两个矩阵相加)编写两个矩阵相加的方法,编写一个测试程序,提示用户输入两个3*3的矩阵,然后显示它们的和
- 题目
- 题目描述与运行示例
- 破题
- 代码
题目
题目描述与运行示例
8.5(代数:两个矩阵相加)编写两个矩阵相加的方法:
public static double[][] addMatrix(double[][] a, double[][] b)
编写一个测试程序,提示用户输入两个33的矩阵,然后显示它们的和
两个矩阵能相加的前提和相加方法:
两个矩阵具有相同的维数,且元素类型相同或兼容
矩阵对应位置元素相加
运行示例:
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
破题
- 主方法:声明3个3*3的二维数组(矩阵)
- 主方法:获取用户输入,输出提示语句,通过循环给第一个数组赋值
- 主方法:获取用户输入,输出提示语句,通过循环给第二个数组赋值
- 主方法:调用方法addMatrix,传入两个数组,用第三个数组接收返回值
- 主方法:输出语句
- 主方法:输出三个数组
- addMatrix方法:声明一个3*3的二维数组
- addMatrix方法:使用双层循环遍历传入的a和b两个数组,并将对应位置的元素相加并赋值给刚刚声明的数组
- 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的矩阵,然后显示它们的和相关推荐
- Java黑皮书课后题第7章:**7.34(对字符串中的字符排序)使用以下方法头编写一个方法,返回一个排序好的字符串。编写一个测试程序,提示用户输入一个字符串,显示排序好的字符串
**7.34(对字符串中的字符排序)使用以下方法头编写一个方法,返回一个排序好的字符串.编写一个测试程序,提示用户输入一个字符串,显示排序好的字符串 题目 题目描述 破题 代码 运行实例 题目 题目描 ...
- Java黑皮书课后题第6章:*6.23(指定字符的出现次数)使用下面的方法头编写一个方法,找到一个字符串中指定字符的出现次数。编写一个测试程序,提示用户输入一个字符串以及一个字符,显示该字符出现次数
6.23(指定字符的出现次数)使用下面的方法头编写一个方法,找到一个字符串中指定字符的出现次数.编写一个测试程序,提示用户输入一个字符串以及一个字符,显示该字符出现次数 题目 题目描述 破题 代码 运 ...
- Java黑皮书课后题第7章:*7.12(倒置数组)7.7节中的reverse方法通过复制到新数组实现倒置。改写方法将参数中传递的数组倒置,并返回该数组。编写一个测试程序,输入10个数字,倒置它们并显示
7.12(倒置数组)7.7节中的reverse方法通过复制到新数组实现倒置.改写方法将参数中传递的数组倒置,并返回该数组.编写一个测试程序,输入10个数字,倒置它们并显示 题目 题目描述 破题 代码 ...
- Java黑皮书课后题第5章:**5.21(金融应用:比较不同利率下的贷款)编写程序,让用户输入输入贷款总额和以年为单位的贷款期限,然后显示利率从5%到8%每次递增1/8的各种利率下,每月支付额和总支付
**5.21(金融应用:比较不同利率下的贷款)编写程序,让用户输入输入贷款总额和以年为单位的贷款期限,然后显示利率从5%到8%每次递增1/8的各种利率下,每月支付额和总支付 题目 题目概述 运行示例 ...
- Java黑皮书课后题第6章:*6.16(一年的天数)使用下面的方法体编写一个方法,返回一年的天数。编写一个测试程序,显示从2000年到2020年间每年的天数
*6.16(一年的天数)使用下面的方法体编写一个方法,返回一年的天数.编写一个测试程序,显示从2000年到2020年间每年的天数 题目 题目描述 破题 本题代码 运行示例 题目 题目描述 *6.16( ...
- Java黑皮书课后题第5章:5.26(计算e)下面的数列可以近似计算e,编写程序显示i=10000、20000、30000…100000时值
5.26(计算e)下面的数列可以近似计算e,编写程序显示i=10000.20000.30000-100000时e值 题目 题目概述 代码 运算结果 题目 题目概述 5.26(计算e)下面的数列可以近似 ...
- 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= ...
- 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 ...
- Java黑皮书课后题第10章:**10.25(新的字符串split方法)String类中的split方法会返回一个字符串数组,该数组是由分隔符分隔开的子串构成的
Java黑皮书课后题第10章:**10.25(新的字符串split方法) 题目 代码 运行实例 题目 代码 public class Test25 {public static String[] sp ...
- 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 ...
最新文章
- Windows 11 用户“怒了” :微软发推炫耀 3D 海龟表情包引争议
- centos7升级php版本
- Shiro 那点事儿
- 阿里“三活”数据中心实践经验:没人能做,我们就自己做
- WinXP中鲜为人知的28项隐藏功能
- Linux/Unix/Mac 系统GIT密码存储
- 电脑生成siri语音_米家智能台灯1S全新升级,支持小爱和Siri的语音控制
- opencv 阈值分割_用 OpenCV 去除图片中的水印,骚操作!
- Spark SQL将rdd转换为数据集-以编程方式指定模式(Programmatically Specifying the Schema)
- 【Python】高级函数
- [收藏] 将 DTS 用于业务智能解决方案的最佳实践
- python视频转化_python实现视频读取和转化图片
- 编辑PDF时怎样删除文件中的图片
- matlab中的clc命令和clear命令
- java 区分鼠标左键单击和双击
- RKRK3399平台开发系列讲解(其他篇)1.29、查看显示时钟
- 开启snapshot的操作失败 如何解决——两种办法
- alevel计算机教材答案,alevel计算机教材电子版及内容和目录大纲
- pyqt5中QGraphicsView弹出菜单
- chosen插件 select 替换 option