C++作业3.0

目录

要求

思路

代码


要求

写一个类Math,拥有封装的属性int value。
通过构造函数Math(int value)给value赋予初始值(不得使用构造初始化列表)
要求实现加减乘除四个函数,四个函数都支持链式调用。
写一个函数可以把value的数值置零。

思路

一、整体功能概述

 

定义了一个名为Math的类,用于进行一系列数学运算(加、减、乘、除)和清零操作。在main函数中,通过用户输入四个整数值,然后使用Math类的方法依次进行这些运算,并展示结果。

 

二、类的分析

 
  1. Math类:
    • 成员变量
      • value:用于存储当前的数值。
    • 构造函数
      • Math(int value):接受一个整数参数,初始化value成员变量。
    • 成员函数
      • clear():将value重置为 0,并返回对当前对象的引用,以便支持链式调用。
      • jia(int value)jian(int value)cheng(int value)chu(int value):分别实现加法、减法、乘法、除法运算,并返回对当前对象的引用,实现链式调用。
      • get_value():返回当前的value值。
 

三、主函数分析

 
  1. 提示用户输入四个整数值:

    • 使用cout输出提示信息,然后通过cin从用户获取四个整数abcd
  2. 进行数学运算并输出结果:

    • 首先,使用v1.jia(a).jian(b).cheng(c).chu(d).get_value()依次对初始值为 0 的Math对象进行加、减、乘、除运算,并输出结果。
    • 然后,再次对经过运算的对象调用clear()方法进行清零操作,并输出清零后的结果。

代码

#include <iostream>

using namespace std;

class Math
{
private:
    int value;
public:
    Math& clear()
    {
        this->value=0;
    }

    Math(int value)
    {
        this->value=value;
    }

    Math& jia(int value)
    {
        this->value +=value;
        return *this;
    }
    Math& jian(int value)
    {
        this->value -=value;
        return *this;
    }
    Math& cheng(int value)
    {
        this->value *=value;
        return *this;
    }
    Math& chu(int value)
    {
        this->value /=value;
        return *this;
    }
    int get_value()
    {
        return value;
    }
};

int main()
{
    Math v1(0);
    int a,b,c,d;
    cout << "请输入要计算的四个值:" << endl;
    cin >> a >> b >> c >> d ;
    cout << "依次执行加减乘除的结果为:" <<
            v1.jia(a).jian(b).cheng(c).chu(d).get_value() << endl;
    cout << "执行清零函数:" <<
            v1.jia(a).jian(b).cheng(c).chu(d).clear().get_value() << endl;
    return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值