C++でヴァリニョンの平行四辺形の周囲長と面積を求める方法
ヴァリニョンの平行四辺形(Varignon's Parallelogram)とは、四角形の各辺の中点を順に結ぶことで形成される平行四辺形のことです。
四角形ABCDを考えてみましょう。各辺の中点をそれぞれP、Q、R、Sとします。これら4つの中点を結ぶと、必ず平行四辺形PQRSが形成されます。これが「ヴァリニョンの平行四辺形」と呼ばれるものです。

本記事では、四角形の2つの対角線の長さと面積が与えられたとき、ヴァリニョンの平行四辺形の周囲長と面積を求める方法を解説します。
入力例と出力例
入力: d1 = 6, d2 = 9, Area = 12 出力: 周囲長 = 15 面積 = 6 入力: d1 = 11, d2 = 13, Area = 32 出力: 周囲長 = 24 面積 = 16
解法のアプローチ
周囲長の導出
三角形ABCにおいて、PはABの中点、QはACの中点です。
中点定理より、PQ = (1/2) × AC が成り立ちます。
同様に三角形ADCに中点定理を適用すると、RS = (1/2) × BD となります。
したがって、以下の関係が導かれます。
- PQ = RS = (1/2) × AC
- PS = QR = (1/2) × BD
よって、平行四辺形PQRSの周囲長は次のように表せます。
PQRSの周囲長 = AC + BD(=元の四角形の対角線の和)

面積の導出
PQRSの面積を求めるには、四角形ABCDを4つの三角形に分割して考えます。各三角形の面積は次の通りです。
- A1 = (1/4) × 三角形BADの面積
- A2 = (1/4) × 三角形ABCの面積
- A3 = (1/4) × 三角形BCDの面積
- A4 = (1/4) × 三角形ACDの面積
これらを合計すると、
A1 + A2 + A3 + A4 = (1/4) × (三角形ACD+ABC+BCD+BADの面積の合計)
= (1/4) × 2 × 四角形ABCDの面積
= (1/2) × 四角形ABCDの面積
つまり、平行四辺形PQRSの面積は、元の四角形ABCDの面積の半分になります。
以上の公式を使えば、C++で簡単に周囲長と面積を計算できます。
C++での実装例
上記のアプローチを実装したC++コードは以下の通りです。
#include <bits/stdc++.h>
using namespace std;
int main(){
float d1 = 6, d2 = 9, area_ABCD = 12;
float area_PQRS = area_ABCD/2;
float perimeter = d1 + d2;
cout << "Area of parallelogram PQRS = " << area_PQRS << " and perimeter = " << perimeter;
return 0;
}
実行結果
Area of parallelogram PQRS = 6 and perimeter = 15
まとめ
本記事では、ヴァリニョンの平行四辺形の性質と、その周囲長・面積の求め方について解説しました。中点定理を利用することで、周囲長は「元の四角形の対角線の和」、面積は「元の四角形の面積の半分」というシンプルな公式が導けることを確認しました。紹介したプログラムはC++以外にも、C、Java、Pythonなど他の言語でも同様に実装できますので、ぜひ試してみてください。
-
C++で正三角形の面積と周囲の長さを計算するプログラム
正三角形とは? その名の通り、正三角形とは3つの辺の長さがすべて等しく、内角もすべて60°で等しい三角形のことです。正多角形の一種であるため、「正多角形としての三角形(regular polygon)」とも呼ばれます。 正三角形には以下のような性質があります。 3つの辺の長さがすべて等しい すべての内角が同じ60°である 下記は正三角形の図です。 問題の概要 正三角形の1辺の長さが与えられたとき、その面積と周囲の長さを求めることが課題です。ここでいう面積とは図形が占める領域の広さを指し、周囲の長さ(外周)とは三角形の境界線の全長を指します。 正三角形の面積と周囲の長さは、それぞれ次の公
-
C++で立方体の体積と表面積を求めるプログラム
立方体とは? 立方体とは、正方形の面を6つ持つ三次元の立体図形です。すべての辺の長さが等しいという特徴があります。立方体は唯一の正六面体であり、以下のような性質を持ちます。 面の数:6つ 辺の数:12本 頂点の数:8つ 以下は立方体の図です。 問題の概要 立方体の一辺の長さが与えられたとき、その立方体の表面積と体積を求めることが課題です。ここで、表面積とは立方体の各面が占める面積の合計を指し、体積とはその図形が内包できる空間の大きさを指します。 立方体の表面積と体積を計算するには、次の公式を使用します。 表面積 = 6 × 辺 × 辺 体積 = 辺 × 辺 × 辺 入力例と出力例 入力