• 20165103结对编程练习_四则运算(第二周)


    import java.util.Random;
    public class Fraction {
        private int numerator, denominator;  //定义分母、分子
    
        public  Fraction (int numer, int denom)
        {
    
            if(denom == 0 )        //分子为0
                denom = 1;
            if (denom < 0)           //若分母小于0,则取分母为正值,分子为负值
            {
                numer = numer * -1;
                denom = denom * -1;
            }
            numerator = numer;
            denominator = denom;
    
            reduce();
        }
    
        public int getNumerator()
        {
            return numerator;
        }
    
        public int getDenominator()
        {
            return denominator;
        }
    
    
        public Fraction add(Fraction op2)          //实现真分数加法运算
        {
            int commonDenominator = denominator * op2.getDenominator();   //两随机数a1、a2的分母相乘,进行通分
            int numerator1 = numerator * op2.getDenominator();            //a1的分子=a1的分子与a2的分母相乘
            int numerator2 = op2.getNumerator() * denominator;           //a2的分子=a2的分子与a1的分母相乘
            int sum = numerator1 + numerator2;                            //将通分过后的两个随机数相加
            System.out.print("("+this.toString()+")" + " + " + "("+op2.toString()+")" + "=");
            return new Fraction (sum, commonDenominator);
        }
    
        public Fraction subtract(Fraction op2)           //实现真分数减法运算
        {
            int commonDenominator = denominator * op2.getDenominator();
            int numerator1 = numerator * op2.getDenominator();
            int numerator2 = op2.getNumerator() * denominator;
            int difference = numerator1 - numerator2;
            System.out.print("("+this.toString()+")" + " - " + "("+op2.toString()+")" + "=");
            return new Fraction(difference,commonDenominator);
        }
    
        public Fraction multiply (Fraction op2)              //实现真分数乘法运算
        {
            int numer = numerator * op2.getNumerator();
            int denom = denominator * op2.getDenominator();
            System.out.print("("+this.toString()+")" + " * " + "("+op2.toString()+")" + "=");
            return new Fraction (numer, denom);
        }
    
        public Fraction divide (Fraction op2)              //实现真分数除法运算
        {
    
            int numer = numerator * op2.getDenominator();
            int denom = denominator * op2.getNumerator();
            System.out.print("("+this.toString()+")" + " / " + "("+op2.toString()+")" + "=");
            return new Fraction (numer, denom);
        }
    
        public String toString()      //输出格式及限定
        {
            String result;
    
            if (numerator == 0)               //分子为0,结果为0
                result = "0";
            else
            if(denominator == 0)              //分母不能为0
                return "错误!分母不能为0";
            else
            if (denominator == 1)             //分母为1,结果取分子值
                result = numerator + "";
    
            else
                result = numerator + "/" + denominator;  //按分数形式输出结果
    
            return result;
        }
    
        private void reduce()
        {
            if (numerator != 0)
            {
                int common = gcd (Math.abs(numerator), denominator);    //取分子分母最大公因子
    
                numerator = numerator / common;                        //约分
                denominator = denominator / common;
            }
        }
    
    
        private int gcd (int num1, int num2)                      //计算最大公因子
        {
            if(num2==0)
                return num1;
            else
                return gcd(num2,num1%num2);
    
        }
        public static Fraction obj(){                               //生成随机数
            Random ran = new Random();
            return new Fraction(ran.nextInt(100),ran.nextInt(100));
        }
    }
    
  • 相关阅读:
    SAP PI 如何实现消息定义查询
    EWM与ERP交互程序
    ITS Mobile Template interpretation failed. Template does not exist
    SAP Material Flow System (MFS) 物料流系统简介
    SAP EWM Table list
    EWM RF 屏幕增强
    SAP EWM TCODE list
    SAP扩展仓库管理(SAPEWM)在线研讨会笔记
    ERP与EWM集成配置ERP端组织架构(二)
    EWM RF(Radio Frequency)简介
  • 原文地址:https://www.cnblogs.com/8cloud33zzk/p/8910835.html
Copyright © 2020-2023  润新知