24小时热门版块排行榜    

查看: 460  |  回复: 3

1162113739

木虫 (正式写手)

[求助] 求大神帮忙补全下面两个程序的缺失部分啊,多谢了 已有1人参与

编写Fraction类,封装分数的基本功能,Fraction的如下:
#include <iostream>
using namespace std;
class Fraction
{
public:
Fraction();  //缺省构造函数设置分子为0,分母为1
Fraction(int n);  //只有1个参数,设置分子为n,分母为1
Fraction(int n,int d); //设置分子为n,分母为d
void setValue(int n, int d);   //设置分子和分母67
int getNum();   //获取分子值
int getDen();   //获取分母值       
double getDoubleValue();   //获取分数对应的小数值
void output();  //按分数形式显式分数
private:
int num;  //分子
int den; //分母
};
给出所有成员函数的实现:
测试:
int main()
{
Fraction f1,f2(2),f3(3,4);
f1.output();
f2.output();
f3.output();
f1.setValue(6, 4);
f1.output();
cout<<" double valueof f1:"<<f1.getDoubleValue( )<<endl;
return 0;
}












将构造函数的实现写出初始化列表的形式。
#include <iostream>
using namespace std;
class Fraction
{
public:
Fraction();  //缺省构造函数设置分子为0,分母为1
Fraction(int n);  //只有1个参数,设置分子为n,分母为1
Fraction(int n,int d); //设置分子为n,分母为d
void setValue(int n, int d);   //设置分子和分母
int getNum()const;   //获取分子值
int getDen()const;   //获取分母值
double getDoubleValue()const;   //获取分数对应的小数值
void output()const;  //按分数形式显示分数
private:
int num;  //分子
int den; //分母
void normalize();  //异常处理、标准化、化简
int gcd( int n, int d);  //求n和d的最大公约数
};
给出新增或修改成员函数的定义
按照下面的主程序测试所写的分数类,检查结果是否正确。
int main()
{
Fraction f1(8,10);
f1.output();
f1.setValue(18, 15);
f1.output();
f1.setValue(-7,4);
f1.output();
f1.setValue(0, 31);
f1.output();
f1.setValue (3,0);
f1.output();
f1.setValue(10, -4);
f1.output();
f1.setValue(14,2);
f1.output();
f1.setValue(-4, 5);
f1.output();
return 0;
}
回复此楼

» 猜你喜欢

» 本主题相关商家推荐: (我也要在这里推广)

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

liu2012huan

铜虫 (正式写手)

【答案】应助回帖

★ ★ ★ ★ ★
感谢参与,应助指数 +1
1162113739: 金币+5, ★★★★★最佳答案 2015-05-05 20:54:52
class Fraction
{
    public:
        Fraction();  //缺省构造函数设置分子为0,分母为1
        Fraction(int n);  //只有1个参数,设置分子为n,分母为1
        Fraction(int n,int d); //设置分子为n,分母为d
        void setValue(int n, int d);   //设置分子和分母67
        int getNum();   //获取分子值
        int getDen();   //获取分母值
        double getDoubleValue();   //获取分数对应的小数值
    void output();  //按分数形式显式分数
    private:
        int num;  //分子
        int den; //分母
};
//给出所有成员函数的实现:
Fraction::Fraction(){//缺省构造函数设置分子为0,分母为1
        num = 0;
        den = 1;
}
Fraction::Fraction(int n){  //只有1个参数,设置分子为n,分母为1
        num = n;
        den = 1;
}
Fraction::Fraction(int n,int d){ //设置分子为n,分母为d
        num = n;
        den = d;
}
void Fraction::setValue(int n, int d){   //设置分子和分母67
        num = n;
        den = d;
    }
int Fraction::getNum(){
    return num;
}  //获取分子值
int Fraction::getDen(){
    return den;
}  //获取分母值
double Fraction::getDoubleValue(){
       double v = double(num )  / den;
       return v;

}  //获取分数对应的小数值

建议看下c++基本语法
图像检索,图像处理,机器学习。
2楼2015-05-05 18:55:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

1162113739

木虫 (正式写手)

引用回帖:
2楼: Originally posted by liu2012huan at 2015-05-05 18:55:52
class Fraction
{
    public:
        Fraction();  //缺省构造函数设置分子为0,分母为1
        Fraction(int n);  //只有1个参数,设置分子为n,分母为1
        Fraction(int n,int d); //设置分子为n,分 ...

谢谢啦
3楼2015-05-05 20:55:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

1162113739

木虫 (正式写手)

引用回帖:
2楼: Originally posted by liu2012huan at 2015-05-05 18:55:52
class Fraction
{
    public:
        Fraction();  //缺省构造函数设置分子为0,分母为1
        Fraction(int n);  //只有1个参数,设置分子为n,分母为1
        Fraction(int n,int d); //设置分子为n,分 ...

大神,能把这部分帮忙写出来吗,多谢了。我自己写的不能把分数化简,还出现了分母为0的分数。
void normalize();  //异常处理、标准化、化简
int gcd( int n, int d);  //求n和d的最大公约数
};
给出新增或修改成员函数的定义
按照下面的主程序测试所写的分数类,检查结果是否正确。
4楼2015-05-05 22:46:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 1162113739 的主题更新
信息提示
请填处理意见