Computer >> Máy Tính >  >> Lập trình >> C ++

Tìm số hình chóp ngũ giác bằng C ++

Hình chóp ngũ giác đều bằng số đồ trong hình chóp ngũ giác đều. Hãy xem một số con số Ngũ giác bên dưới.

Tìm số hình chóp ngũ giác bằng C ++

Tổng các số ngũ giác cho đến khi N bằng số hình chóp ngũ giác thứ N. Trong bài này, chúng ta sẽ thảo luận về việc tìm số thứ N của Hình chóp Ngũ giác, chẳng hạn

Input : N = 4
Output : 40
Explanation : Sum of first four pentagonal numbers 1, 5, 12, 22 is 40.

Input : N = 6
Output : 126
Explanation : Sum of first four pentagonal numbers 1, 5, 12, 22, 35, 51 is 40.

Phương pháp tiếp cận để tìm ra giải pháp

Cách tiếp cận đơn giản

Theo ví dụ, cách tiếp cận đơn giản nhất được nghĩ đến:duyệt số từ 1 đến N và tiếp tục cộng các số ngũ giác. Số ngũ giác có thể được tìm thấy bằng công thức (3 * n2 - n) / 2

Ví dụ:Với n =2, số ngũ giác =(3 * 22 - 2) / 2 =5

Ví dụ

#include <bits/stdc++.h>
using namespace std;

int main () {
   int N = 6, SUM = 0;

   // traversing from number 1 to N.
   for (int i = 1; i <= N; i++) {
      // Calculating ith pentagonal number
      // and adding to the SUM.
      SUM = SUM + (3 * i * i - i) / 2;
   }
   cout <<"Nth Pentagonal Pyramidal Number: "<< SUM << endl;
   return 0;
}

Đầu ra

Nth Pentagonal Pyramidal Number: 126

Phương pháp tiếp cận hiệu quả

Chương trình có thể hiệu quả bằng cách sử dụng công thức để tìm N Số hình chóp ngũ giác, là n2 * (n + 1) / 2.

Ví dụ

#include <bits/stdc++.h>
using namespace std;

int main() {
   int N = 6, result;
   // calculating Nth pentagonal pyramidal number by formula.
   result = N * N * (N + 1) / 2;
   cout <<"Nth Pentagonal Pyramidal Number: " << result << endl;
   return 0;
}

Đầu ra

Nth Pentagonal Pyramidal Number: 126

Kết luận

Trong bài viết này, chúng tôi đã thảo luận về vấn đề tìm số thứ N của hình chóp ngũ giác. Chúng tôi đã thảo luận về hai cách tiếp cận để giải quyết vấn đề này:xem qua số thứ N và sử dụng một công thức. Chúng tôi cũng đã thảo luận về chương trình C ++ để giải quyết vấn đề tương tự. Chúng ta có thể viết mã tương tự bằng các ngôn ngữ lập trình khác như C, Java, Python, v.v. Chúng tôi hy vọng bạn thấy bài viết này hữu ích.