小勇学分数

小勇学分数

时间: 1ms        内存:128M

描述:

小慧的弟弟小勇刚学分数,小慧想检查弟弟约分是否正确。请你编程序帮帮她吧。
输入m/n 形式的分数,输出约分后的分数(能整除的只输出整数)

输入:

两个数m和n(1<=n,m<=1000)

输出:

约分后的分数

示例输入:

4/26

示例输出:

2/13

提示:

参考答案(内存最优[748]):

#include<stdio.h>
int main()
{
    int m,n,i,maxnum;
    char c;
    scanf("%d%c%d",&m,&c,&n);
    if(m%n==0)
        printf("%d\n",m/n);
    else
    {
        maxnum = (m>n)?n:m;
        for(i=2; i<maxnum;i++)
        {
            while(m%i==0&&n%i==0)
            {
                m/=i;
                n/=i;
            }
        }
        printf("%d/%d\n",m,n);
    }
    return 0;
}

参考答案(时间最优[0]):

#include<stdio.h>
int main()
{
    int m,n,i,maxnum;
    char c;
    scanf("%d%c%d",&m,&c,&n);
    if(m%n==0)
        printf("%d\n",m/n);
    else
    {
        maxnum = (m>n)?n:m;
        for(i=2; i<maxnum;i++)
        {
            while(m%i==0&&n%i==0)
            {
                m/=i;
                n/=i;
            }
        }
        printf("%d/%d\n",m,n);
    }
    return 0;
}

题目和答案均来自于互联网,仅供参考,如有问题请联系管理员修改或删除。

点赞

发表评论

电子邮件地址不会被公开。必填项已用 * 标注