慢慢ACM 2019-05-29 18:30 采纳率: 0%
浏览 561
已采纳

一个C++分数计算器的程序,通分函数有错误,求指点,怎么改?

这是两个函数,上面约分函数应该是正确的,
求怎样调用约分函数写通分函数

void Grade::Reduction()//约分
{
    int a, b, CommonDivisor, Remainder;//公约数,余数
    a = abs(numerator);//分子取绝对值
    b = abs(denominator);//分母取绝对值
    {
        if (a > b)
        {
            Remainder = a % b;
            while (Remainder != 0)
            {
                int t;
                t = Remainder;
                a = b;
                b = t;
                Remainder = a % b;
            }
            CommonDivisor = b;
        }
        if (a == b)
        {
            CommonDivisor = a;
        }
        if (a < b)
        {
            Remainder = b % a;
            while (Remainder != 0)
            {
                int t;
                t = Remainder;
                b = a;
                a = t;
                Remainder = b % a;
            }
            CommonDivisor = a;
        }
    }//最大公约
    numerator /= CommonDivisor;//约分后分子
    denominator /= CommonDivisor;//约分后分母
}
void Grade::ToCommond(Grade &grade)  //通分
{
int temp;
    Reduction();
    grade.Reduction();
    numerator *= grade.denominator;
    grade.numerator *= denominator;

//////////后面不会写了
  • 写回答

1条回答 默认 最新

  • threenewbee 2019-05-29 19:14
    关注

    https://ask.csdn.net/questions/763220
    看我之前写的程序

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码