分数求和

来源:互联网 发布:淘宝客推广大师手机版 编辑:程序博客网 时间:2024/04/30 02:49

分数求和

时间限制: 1 Sec  内存限制: 128 MB
提交: 256  解决: 29
[提交][状态][讨论版]

题目描述

求两分数相加,输出结果。

输入

题目有多组测试数据,直到文件尾。
每组测试数据需要输入4个整数:
nume1, deno1为第一个数的分子和分母,

nume2, deno2为第二个数的分子和分母。

输出

两分数相加的结果。每个测试数据占一行。
输出格式为“nume3/deno3”,该格式对结果为整数的情况除外。
分母为0的情况不考虑。

样例输入

1 3 1 2 3 25 4 15 1 4 3 4 1 4 1 4

样例输出

5/6 29/75 1 1/2

提示

求最大公约数并约分,并注意分母为 1 时只需要输出分子。

#include<iostream>using namespace std;int main(){ int a1,a2,b1,b2,m,n;while(cin>>a1>>b1>>a2>>b2){ if(b1==0||b2==0)  break;int i,a,b;a=a1*b2+a2*b1;b=b1*b2;if(a>b){m=a;n=b;}else {m=b;n=a;}for(i=n;i>=1;i--)if(m%i==0&&n%i==0)  break;if(i==0)i++;a=a/i;b=b/i;if(b==1)cout<<a<<endl;else cout<<a<<'/'<<b<<endl; }return 0;}
心得:一点点失误答案就是错误!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
0 0
原创粉丝点击