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

Kiểm tra số tam giác bằng C++

Mô tả bài toán

Số tam giác là số n có thể sắp xếp thành tam giác đều (1+2+...+k = n). Kiểm tra n có phải số tam giác không.

Ví dụ

n = 10 → 1+2+3+4 = 10 → True.

Thuật toán

Duyệt i từ 1 đến n, kiểm tra i*(i+1)/2 == n. Hoặc giải phương trình bậc 2: i^2 + i - 2n = 0, kiểm tra nghiệm nguyên dương.

Code C++

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

bool solve(int n) {
    for (int i = 1; i <= n; i++) {
        if (i * (i + 1) == 2 * n)
            return true;
    }
    return false;
}

int main() {
    int n = 10;
    cout << solve(n) << endl;
    return 0;
}

Đầu vào / Đầu ra

Input: 10

Output: 1 (true)