#include<iostream>
using namespace std;
#include<algorithm>
/*int GCD(int a,int b)
{
if(b==0)
return a;
else
return GCD(b,a%b);
}*/
int main()
{
int n,a,b,nume,deno,divisor;
scanf("%d%d/%d",&n,&nume,&deno);
for(int i=1;i<n;i++)
{
scanf("%d/%d",&a,&b);
nume=nume*b+a*deno;
deno=deno*b;
divisor=__gcd(nume,deno);
nume=nume/divisor;
deno=deno/divisor;
}
/* if(deno<0)
{
deno=-deno;
nume=-nume;
}*/
//上面是分子/分母的形式,可能为1/1这种整数形式,可能是1/5这种分数形式,特殊的 0/8这种属于整数,还有5/3这种
if(nume&&nume/deno==0) //为分数 //注意分子不为0且分子/分母为0,所以该数为分数
printf("%d/%d",nume,deno);
else if(nume%deno==0) //只有整数
printf("%d\n",nume/deno);
else
printf("%d %d/%d\n",nume/deno,nume%deno,deno);
return 0;
}
5.N个数求和
于 2022-02-16 11:11:31 首次发布