天天看點

c++ 計算長方形面積 類對象傳參

c++ 計算長方形面積 類對象傳參

    • 題目
    • 問題描述
    • 問題分析
    • 設計思想
    • 設計表示
    • 源代碼
    • 測試資料及運作結果

題目

編寫一個程式計算兩個給定長方形的面積,其中在設計類成員函數addarea()(用于計算兩個長方形的總面積)時使用對象作為參數。

問題描述

本題要求我們首先計算長方形的面積,然後再計算兩個長方形的面積和。

問題分析

編寫本題程式首先要定義一個長方形類,其中要包括求長方形面積的函數,以及用于計算兩個長方形的總面積的成員函數addarea(),在設計成員函數addarea()時要使用對象作為參數。

設計思想

在編寫本題的過程中,我定義了一個長方形類Rectangle,該長方形的長x、寬y為該類的私有成員,在該類中,我還構造了一個成員函數area()用于計算長方形面積;并設計了一個用于計算兩個長方形的總面積的成員函數addarea(),該成員函數使用了對象作為參數,然後在主函數中調用函數addarea()進而輸出兩個長方形的總面積。

設計表示

c++ 計算長方形面積 類對象傳參

源代碼

#include "stdafx.h"
#include <iostream>
using namespace std;


class Rectangle{
public:
	Rectangle(double xx = 0, double yy = 0){
		x = xx;
		y = yy;
	}
	
	double getX(){ return x; }
	double getY(){ return y; }
	double area(){ return x*y; }        //計算一個長方形的面積的函數
	double addarea(Rectangle &sR1);      //計算兩個長方形的總面積的函數 使用對象作為參數

private:
	double x, y;
};


double Rectangle::addarea(Rectangle &sR1)
{
	double  a;

	a = sR1.area() + area();
	cout << "這兩個長方形的面積之和為;" << a << endl;
	return 0;
}

int _tmain(int argc, _TCHAR* argv[])
{
	double a, b, m, n;

	cout << "請依次輸入第一個長方形的長和寬:";
	cin >> a >> b;

	cout << "請依次輸入第二個長方形的長和寬:";
	cin >> m >> n;

	Rectangle sR1(a, b);
	Rectangle sR2(m, n);
	
	sR2.addarea(sR1);
	
	return 0;
}
           

測試資料及運作結果

c++ 計算長方形面積 類對象傳參

繼續閱讀