C语言中正方形内最大的莱洛三角形?
莱洛三角形是由三个圆盘的交集形成的形状,每个圆盘的圆心都在其他两个圆盘的边界上。它的边界是等宽曲线,除了圆本身之外,它是最简单、最著名的等宽曲线。等宽意味着每两条平行支撑线的间距相同,与它们的方向无关。因为它的所有直径都相同。
莱洛三角形的边界是基于等边三角形的等宽曲线。每条边上的所有点都与对面的顶点等距。
莱洛三角形的构造方法
莱洛三角形的公式
如果莱洛三角形的曲线基于等边三角形,且三角形的边长为h,则莱洛三角形的面积
A = (π * h2) / 2 – 2 * (Area of equilateral triangle) = (π – √3) * h2 / 2 = 0.70477 * h2
正方形内最大的莱洛三角形
让我们举个例子:
Input: a = 6 Output: 25.3717
解释
莱洛三角形的面积为0.70477 * b2,其中b是支撑莱洛三角形的平行线之间的距离。
支撑莱洛三角形的平行线之间的距离 = 正方形的边长,即a
莱洛三角形的面积,A = 0.70477 * a2
示例
#include <stdio.h> #include <math.h> int main() { float a = 6; float area = 0.70477 * pow(a, 2); printf("The area is : %f",area); return 0; }
输出
The area is : 25.371719
广告