숫자 n이 있고 n개의 면이 있는 볼록 다각형에 대한 대각선의 수를 찾아야 한다고 가정합니다. 따라서 n =5이면 대각선 개수는 5가 됩니다.
이것은 n면 볼록 다각형이므로 각 꼭짓점에서 n – 3개의 대각선을 그릴 수 있으며 두 면의 인접한 꼭짓점과 자신을 남깁니다. 따라서 n개의 정점에 대해 n*(n-3)이 되지만 두 번 고려하므로 n(n – 3)/2가 됩니다.
예시
#include<iostream> using namespace std; int diagonalCount(int n) { return n * (n - 3) / 2; } int main() { int n = 8; cout << n << " sided convex polygon has " << diagonalCount(n) << " diagonals"; }이 있습니다.
출력
8 sided convex polygon has 20 diagonals