C03-Java同步实践加强班第3周上机任务

【感谢胡光老师提供1-3题】

回到C03-Java同步实践加强班学习安排

1. 实现分数的加法运算

编程思路:分数相加,两个分数分别是1/5和7/20,它们相加后得11/20。方法是先求出两个分数分母的最小公倍数,通分后,再求两个分子的和,最后约简结果分数的分子和分母(如果两个分数相加的结果是4/8,则必须将其化简成最简分数的形式1/2),即用分子分母的最大公约数分别除分子和分母。请用四个对话框顺序输入分子和分母,在控制台上输出其运算结果。

参考代码:

package hu;
public class TestFractory {
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		fracAdd(1,5,7,20);//结果为:11/20
		//fracSub(1,5,7,20);//分数相减
		//fracMul(1,5,7,20);//分数相乘
		//fractDiv(1,5,7,20);//分数相除


	}
	static void fracAdd(int first_numerator,int first_denominator,int second_numrator,int second_denominator){
		//以下代码能够在控制台上显示结果
		//需要调用求最大公约数的函数
		//需要调用求最小公倍数的函数
	}
	static int gcd(int m,int n){
		return 0;
		
	}
	static int lcm(int m,int n){
		return 0;
	}
}



2. 求出行数和列数相等矩阵的非对角线元素之和,矩阵用二维数组表示。
编程思路:即求二维数组两条对角线之外的元素之和,如下图斜线部分以外的数的和。
参考代码:
package hu;
public class TestMatrix {


	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int[][] a={{1,1,1,1},{1,2,2,1},{1,2,2,1},{1,1,1,1}};//初始化数组如4*4
		printMatrix(a);//按二维方式输出数组
		int sum=addMatrix(a);
		System.out.println(sum);




	}
	static void printMatrix(int[][] a){
		
	}
	static int addMatrix(int[][] a){
		return 0;
	}
}

3.在任务1的基础上实现分数的四则运算,即两个分数相减,相乘和相除,要考虑到各种边界情况。
4.在任务2的基础上,实现矩阵的加法和乘法运算。这两种运算的规则请自行百度。
5.设计一个时间类,记录时间中的时、分、秒,用类中的方法完成设置、显示时间,增加1秒钟、增加1分钟、增加1小时、增加n秒钟、增加n分钟、增加n小时的功能。提示:要考虑增加后超出取值范围的情形。

相关推荐
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页