java 实验一 java基础实验 用Java applet和application分别编写一个程序进行10年存款的本息计算。 已知两个二维数组a,b,其初值如下: int a[][]=new int[2][3]; int b[][]={ {1,5,2,8},{5,9,10,-3},{2,7,-5,-18} }; 求这两个二维数组的乘积。 采用applet编写一个小应用程序。该程序通过让用户输入1-3数值中的一个,实现线、方形、圆型绘制。要求用户提示采用DialogBox。 ### Java基础实验知识点 #### 实验一:Java基础实验 ##### 实验目的: 1. **理解Java Application与Applet及DialogBox的区别**:通过实践掌握Application与Applet的基本概念及其应用场景,同时熟悉如何使用DialogBox进行用户交互。 2. **Eclipse环境下的程序开发流程**:学会如何在Eclipse集成开发环境中编写、编译、调试和运行Java程序。 3. **Java控制结构和数据结构的应用**:深入理解Java中的控制语句、循环语句以及数组的使用方法,并能够运用这些知识解决实际问题。 ##### 实验内容详解: ### 1. 用Java Applet和Application分别编写一个程序进行10年存款的本息计算 **理论背景**: - 存款的本息计算公式为:总金额 = 本金 * (1 + 利率)^存款年限 - 其中,`^` 表示乘方运算。 **代码实现**: - **Application实现**: - 使用`Scanner`类获取用户的输入,包括本金和利率。 - 使用`for`循环计算10年内每年的本息总额。 - `Math.pow`函数用于计算指数运算。 - 示例代码如下: ```java import java.util.Scanner; public class MoneyCalculation { public static void main(String[] args) { double rate, amount, year, principle; Scanner in = new Scanner(System.in); System.out.println("请输入本金"); principle = in.nextDouble(); System.out.println("请输入利率"); rate = in.nextDouble(); System.out.println("年份 本息总额"); for (year = 1; year <= 10; year++) { amount = principle * Math.pow(1.0 + rate, year); System.out.printf("%d %.2f\n", (int) year, amount); } } } ``` - **Applet实现**: - 使用`Graphics`对象绘制文本到Applet窗口。 - 示例代码如下: ```java import java.applet.Applet; import java.awt.Graphics; public class MoneyApplet extends Applet { public void paint(Graphics g) { double k = 0; int i = 1, j = 40; g.drawString("本金是:1000", 40, 20); g.drawString("年利息是:0.01", 40, 40); for (i = 1, j = 50; i <= 10 && j <= 200; i++, j += 10) { k = 100 * Math.pow(1 + 0.01, i); String s = String.valueOf(k); g.drawString(s, 40, j + 20); } } } ``` ### 2. 计算两个二维数组的乘积 **理论背景**: - 二维数组可以表示矩阵,两个矩阵相乘的规则是第一个矩阵的行数必须等于第二个矩阵的列数。 - 计算过程中,第i行第j列的结果是第一个矩阵第i行与第二个矩阵第j列对应元素的乘积之和。 **代码实现**: - 定义两个二维数组`a`和`b`。 - 使用嵌套循环计算乘积矩阵`c`。 - 示例代码如下: ```java public class MatrixMultiplication { public static void main(String[] args) { int a[][] = {{2, 3, 4}, {4, 6, 8}}; int b[][] = {{1, 5, 2, 8}, {5, 9, 10, -3}, {2, 7, -5, -18}}; System.out.print("****Matrix a****\n"); printMatrix(a); System.out.print("****Matrix b****\n"); printMatrix(b); int aRow = a.length; int bCol = b[0].length; int m = b.length; int[][] c = new int[aRow][bCol]; for (int i = 0; i < aRow; i++) { for (int j = 0; j < bCol; j++) { for (int k = 0; k < m; k++) { c[i][j] += a[i][k] * b[k][j]; } } } System.out.print("****Resultant Matrix c = a*b****\n"); printMatrix(c); } private static void printMatrix(int[][] matrix) { for (int i = 0; i < matrix.length; i++) { for (int j = 0; j < matrix[i].length; j++) { System.out.print(matrix[i][j] + " "); } System.out.println(); } } } ``` ### 总结 以上两个实验内容不仅涵盖了基本的Java语法和编程技巧,还涉及到了简单的数学计算和图形界面的设计。通过这些实验,学生可以进一步加深对Java语言的理解,同时也能够提高自己的编程实践能力。此外,这些实验还为后续学习更复杂的Java技术打下了坚实的基础。
剩余8页未读,继续阅读
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助