Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Kiểm tra số năm giác (Pentagonal Number) trong C++

Cho số N, kiểm tra xem có phải số năm giác hay không. Số năm giác có thể sắp xếp thành hình năm giác. Các số năm giác đầu tiên: 1, 5, 12, 22, 35, 51...

Công thức: P(n) = (3n² - n) / 2, với n là số đỉnh.

Ví dụ

Input: n=22 → 22 là số năm giác
Input: n=23 → 23 không phải số năm giác

Thuật toán

BẮT ĐẦU
    Hàm kiemTra(int n)
        i = 1, a
        do
            a = (3*i*i - i)/2
            i += 1
        while (a < n)
        trả về (a == n)
    main()
        n = 22
        nếu kiemTra(n) in "là năm giác" ngược lại "không phải"
KẾT THÚC

Ví dụ mã C++

#include <iostream>
using namespace std;

bool kiemTra(int n){
    int i = 1, a;
    do{
        a = (3*i*i - i)/2;
        i += 1;
    } while (a < n);
    return (a == n);
}

int main(){
    int n = 22;
    if (kiemTra(n))
        cout << n << " là năm giác" << endl;
    else
        cout << n << " không phải năm giác" << endl;
    return 0;
}

Kết quả đầu ra

22 là năm giác