C++中尋找約數個數超過N的第一個三角數
在本教程中,我們將找到一個約數個數大於n的三角數。
如果在小於或等於n的任意點上自然數的和等於給定數字,則該給定數字為三角數。
我們已經瞭解了什麼是三角數。讓我們看看解決這個問題的步驟。
初始化數字
編寫一個迴圈,直到我們找到滿足給定條件的數字。
檢查該數字是否為三角數。
檢查該數字是否具有超過n個約數。
如果滿足上述兩個條件,則列印該數字並中斷迴圈。
示例
讓我們看看程式碼。
#include <bits/stdc++.h>
using namespace std;
bool isTriangular(int n) {
if (n < 0) {
return false;
}
int sum = 0;
for (int i = 1; sum <= n; i++) {
sum += i;
if (sum == n) {
return true;
}
}
return false;
}
int divisiorsCount(int n) {
int count = 0;
for (int i = 1; i <= n; i++) {
if (n % i == 0) {
count += 1;
}
}
return count;
}
int main() {
int n = 2, i = 1;
while (true) {
if (isTriangular(i) && divisiorsCount(i) > 2) {
cout << i << endl;
break;
}
i += 1;
}
return 0;
}輸出
如果執行以上程式碼,則會得到以下結果。
6
結論
如果您在本教程中遇到任何疑問,請在評論區提出。
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP