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

来源:互联网 发布:mac 修图软件推荐 编辑:程序博客网 时间:2024/06/05 08:11

【感谢胡光老师提供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 stubfracAdd(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 stubint[][] a={{1,1,1,1},{1,2,2,1},{1,2,2,1},{1,1,1,1}};//初始化数组如4*4printMatrix(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小时的功能。提示:要考虑增加后超出取值范围的情形。

原创粉丝点击