#include<iostream>
using namespace std;
class Fract
{
public:
Fract(int a=0,int b=1)
{
num=a;
den=b;
}
int gcd();
Fract add(Fract f);
void show();
private:
int num,den;
};
int gcd(int m,int n)
{
int r;
if(m<n)
{
r=m;
m=n;
n=r;
}
while(r=m%n)
{
m=n;
n=r;
}
return n;
}
Fract Fract::add(Fract f)
{
Fract sum;
sum.den=den*f.den;
sum.num=f.den*num+den*f.num;
int x=gcd(sum.num,sum.den);
sum.num=sum.num/x;
sum.den=sum.den/x;
return sum;
}
void Fract::show()
{
cout<<num<<"/"<<den<<endl;
}
int main()
{
Fract f1(1,5),f2(7,20),f3;
f3=f1.add(f2);
f3.show();
return 0;
}
杨魅力
aluckdog
相关分类