• LAB3 整数相加


    //yuec2 Yue Cheng
    package lab3;
    
    public class Fraction {
        int numerator;
        int denominator;
        //obeject with 1
        Fraction() {
            numerator = 1;
            denominator = 1;
        }
        //object with passing value
        Fraction(int numerator, int denominator) {
            this.numerator=numerator;
            this.denominator = denominator;
        }
        double toDecimal() {
            return (float)numerator / denominator;
        }
        //refer to the former object
        public String toString() {
            return this.numerator + "/" + this.denominator;
        }
    
        //findGCD medthod
        int findGCD(int n , int d) {
            //base cases
            if (n == 0) return 1;
            if (d == 0) return n;
    
            else return findGCD(d , n % d);
        }
    
    
    
        Fraction add(Fraction f) {
            int a = f.numerator * this.denominator;
            int b = f.denominator * this.numerator;
            int num = a + b;
            int den = f.denominator * this.denominator;
    
            int gcd = findGCD(num , den);
            num /= gcd;
            den /= gcd;
    
            this.numerator = num;
            this.denominator = den;
            //if a newly-defined return type, return a new object
            Fraction f3 = new Fraction(num, den);
            return f3;
        }        
    }
    //yuec2 Yue Cheng
    package lab3;
    
    //parent class
    public class MixedFraction extends Fraction{
        int naturalNumber;
        
        MixedFraction(int naturalNumber, int numerator, int denominator) {
            //from father class
            super(numerator, denominator);
            this.naturalNumber = naturalNumber;
        }
        
        public String toString() {
            return this.naturalNumber + " " + this.numerator + "/" + this.denominator;
        }
        
        double toDecimal() {
            double number = (double) naturalNumber + super.toDecimal();
            return number;
        }
        
        Fraction toFraction() {
            int num = naturalNumber*denominator + numerator;
            int den = denominator;
            Fraction f = new Fraction(num, den);
            return f;
        }
        
        Fraction add(MixedFraction mf) {
            Fraction f1 = this.toFraction();
            Fraction f2 = mf.toFraction();
            Fraction f3 = f1.add(f2);
            return f3;
        }
        
        
    }

     【知识】

    主类中用constructor建对象,子类中用关键字。

    【过程分析】

    开始觉得自己能行,一次告一点地写到了7:00,后来一run发现写完的全是错,而且还有半个函数没写,UX小姐姐帮我写完的。不然那要跪,真的很危险。

    【原因】

    理解题意都要好长的时间,但是还是要基本理解的。一些知识点第一次学,不熟练。而且改bug说真的很花时间,有的还要整个重写。

    【措施】

    6:00-6:10理解题意,最多到6:15

    6:10-6:20写姓名搭好框架和最简单的内容,最多到6:25

    6:20-7:00抱大腿,一直到跑通所有case,最多到7:05。

    7:10起码提交一次,7:10-7:20检查。

    不要自己写,自己写就是个坑。但也不可能直接让助教敲是不,所以自己先把method SIG和最容易的函数写出来,然后说我不会,能不能be specific给我敲。如果不给就换一个人问。

    实在不行就复制同学的,保命要紧。

    【总结】

    反正就是逐个大腿抱过去吧…… 

  • 相关阅读:
    JAVA 之 JSTL
    IDEA 之 ERROR:无法在web.xml或使用此应用程序部署的jar文件中解析绝对uri:[http://java.sun.com/jsp/jstl/core]
    JAVA 之 EL表达式
    IDEA 之 ERROR:端口被占用
    【ubuntu】windows+ubuntu 设置windows为第一启动项
    【ubuntu】Error: environment block too small. Press any key to continue
    Navicat premium15安装破解教程
    通过django中间件和python魔法方法实现自定义session(通过文件存储session)
    每日作业 7/2
    每日作业 7/1
  • 原文地址:https://www.cnblogs.com/immiao0319/p/9749208.html
Copyright © 2020-2023  润新知