IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> C++ 判断两个长方体是否相等—类的使用 -> 正文阅读

[C++知识库]C++ 判断两个长方体是否相等—类的使用

定义一个Cube类

????????计算表面积和体积,并判断长方体是否相等(分别用全局函数和成员函数来实现)。

参考代码:

#include <iostream>

using namespace std;
class Cube {
private:
    double m_l;
    double m_w;
    double m_h;
public:
    //设置长宽高
    void setL(double l) {
        m_l = l;
    }
    void setW(double w) {
        m_w = w;
    }
    void setH(double h) {
        m_h = h;
    }
    //获得长宽高
    double getL() {
        return m_l;
    }
    double getW() {
        return m_w;
    }
    double getH() {
        return m_h;
    }
    //计算面积
    double getA() {
        return (m_l * m_w + m_l * m_h + m_w * m_h) * 2;
    }
    //计算体积
    double getV() {
        return m_l * m_w * m_h;
    }
    //成员函数判断长方体是否相等
    //长方体的长宽高顺序不一,需要重复判断
    bool compareCube2(Cube &ob) {
        if((m_l = ob.m_l) && (m_w == ob.m_w) && (m_h == ob.m_h)) {
            return true;
        } else if((m_l = ob.m_l) && (m_w == ob.m_h) && (m_h == ob.m_w)) {
            return true;
        } else if((m_l = ob.m_w) && (m_w == ob.m_l) && (m_h == ob.m_h)) {
            return true;
        } else if((m_l = ob.m_w) && (m_w == ob.m_h) && (m_h == ob.m_l)) {
            return true;
        } else if((m_l = ob.m_h) && (m_w == ob.m_w) && (m_h == ob.m_l)) {
            return true;
        } else if((m_l = ob.m_h) && (m_w == ob.m_l) && (m_h == ob.m_w)) {
            return true;
        } else {
            return false;
        }
    }

};
//全局函数判断长方体是否相等
//长方体的长宽高顺序不一,需要重复判断
bool compareCube(Cube &cube1, Cube &cube2) {
    if((cube1.getL() == cube2.getL()) && (cube1.getW() == cube2.getW()) \
            && (cube1.getH() == cube2.getH())) {
        return true;
    }
    if((cube1.getL() == cube2.getL()) && (cube1.getW() == cube2.getH()) \
            && (cube1.getH() == cube2.getW())) {
        return true;
    }
    if((cube1.getL() == cube2.getW()) && (cube1.getW() == cube2.getL()) \
            && (cube1.getH() == cube2.getH())) {
        return true;
    }
    if((cube1.getL() == cube2.getW()) && (cube1.getW() == cube2.getH()) \
            && (cube1.getH() == cube2.getL())) {
        return true;
    }
    if((cube1.getL() == cube2.getH()) && (cube1.getW() == cube2.getL()) \
            && (cube1.getH() == cube2.getW())) {
        return true;
    }
    if((cube1.getL() == cube2.getH()) && (cube1.getW() == cube2.getW()) \
            && (cube1.getH() == cube2.getL())) {
        return true;
    }
    return false;
}

void test() {
    //长方体1
    Cube cube1;
    cube1.setL(2);
    cube1.setW(1);
    cube1.setH(3);
    cout << "计算长方体1面积:" << cube1.getA() << endl;
    cout << "计算长方体1体积:" << cube1.getV() << endl;
    cout << "----------------" << endl;
    //长方体2
    Cube cube2;
    cube2.setL(1);
    cube2.setW(3);
    cube2.setH(2);
    cout << "计算长方体2面积:" << cube2.getA() << endl;
    cout << "计算长方体2体积:" << cube2.getV() << endl;
    cout << "----------------" << endl;
    //长方体3
    Cube cube3;
    cube3.setL(1);
    cube3.setW(2);
    cube3.setH(5);
    cout << "计算长方体3面积:" << cube3.getA() << endl;
    cout << "计算长方体3体积:" << cube3.getV() << endl;
    cout << "----------------" << endl;
    //全局函数
    cout << "长方体1 长方体2" << endl;
    if(compareCube(cube1, cube2) == true) {
        cout << "两个长方体相等" << endl;
    } else {
        cout << "两个长方体不相等" << endl;
    }
    cout << "----------------" << endl;
    //成员函数
    cout << "长方体1 长方体3" << endl;
    if(cube3.compareCube2(cube1) == true) {
        cout << "两个长方体相等" << endl;
    } else {
        cout << "两个长方体不相等" << endl;
    }
}
int main() {
    test();
    return 0;
}

运行结果:

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2021-07-31 16:26:28  更:2021-07-31 16:28:31 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年4日历 -2024/4/27 13:46:58-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码