C++でRectangleクラスを作成して長方形の面積を計算するプログラム
ここでは、2つの長方形の「縦(長さ)」と「横(幅)」が与えられたとき、クラスを使ってそれぞれの面積を計算する方法を解説します。
まず、長さを表す l と幅を表す b という2つの属性を持つ Rectangle クラスを作成します。さらに、その長方形の面積を計算して返す area() 関数を定義します。
例えば、入力が (10, 9) と (8, 6) の場合を考えてみましょう。1つ目の長方形は縦10・横9なので、面積は 10 × 9 = 90。2つ目の長方形は縦8・横6なので、面積は 8 × 6 = 48 となります。
解決の手順
- 属性
l(長さ)とb(幅)を持つ Rectangle クラスを定義する lとbに値を設定するためのinput()関数を定義する- 面積である
l * bを返すarea()関数を定義する
サンプルコード
以下の実装例を見ると、より理解しやすいでしょう。
#include <iostream>
using namespace std;
class Rectangle{
private:
int l, b;
public:
void input(int len, int bre){
l = len;
b = bre;
}
int area(){
return l * b;
}
};
int main(){
Rectangle r1, r2;
r1.input(10, 9);
r2.input(8, 6);
cout << "Area of r1: " << r1.area() << endl;
cout << "Area of r2: " << r2.area() << endl;
}入力
(10, 9), (8, 6)
出力
Area of r1: 90 Area of r2: 48
コードのポイント
このプログラムでは、メンバ変数 l と b を private として宣言することでカプセル化を実現しています。外部から直接値を変更できないため、データの保護が可能です。値の設定は public な input() 関数を通じて行い、面積の取得も area() 関数経由で行うという、オブジェクト指向プログラミングの基本的な設計思想に沿った構造になっています。
-
C++で直方体の体積と表面積を計算するプログラムの作成方法
直方体とは? 直方体とは、6つの長方形の面から構成される三次元の立体図形です。各面の縦と横の長さが異なるため、全体として異なる長さの辺を持っています。立方体と直方体の違いは、立方体では長さ・高さ・幅がすべて等しいのに対し、直方体ではこれら3つが必ずしも同じではないという点です。 直方体の主な性質は以下のとおりです。 6つの面 12本の辺 8つの頂点 以下は直方体のイメージ図です。 問題の概要 直方体の長さ(L)、幅(W)、高さ(H)が与えられたとき、その総表面積と体積を求めるのが課題です。表面積とは各面が占める空間の広さのことであり、体積とはその形状が内包できる空間の大きさのことです。
-
C++で立方体の体積と表面積を求めるプログラム
立方体とは? 立方体とは、正方形の面を6つ持つ三次元の立体図形です。すべての辺の長さが等しいという特徴があります。立方体は唯一の正六面体であり、以下のような性質を持ちます。 面の数:6つ 辺の数:12本 頂点の数:8つ 以下は立方体の図です。 問題の概要 立方体の一辺の長さが与えられたとき、その立方体の表面積と体積を求めることが課題です。ここで、表面積とは立方体の各面が占める面積の合計を指し、体積とはその図形が内包できる空間の大きさを指します。 立方体の表面積と体積を計算するには、次の公式を使用します。 表面積 = 6 × 辺 × 辺 体積 = 辺 × 辺 × 辺 入力例と出力例 入力