Centered Nonagonal Number (จำนวน Nonagonal กึ่งกลาง) เป็นลำดับเลขที่แสดงรูปแบบจุดจัดเรียงเป็น Nonagon (รูปเก้าเหลี่ยม) หลายชั้น มีจุดกึ่งกลาง 1 จุด
สูตรคำนวณ
พจน์ที่ n (เริ่มจาก n=1):
Nc(n) = (3n - 2)(3n - 1) / 2
ลำดับตัวอย่าง (n = 1 ถึง 10)
1, 10, 28, 55, 91, 136, 190, 253, 325, 406
การตรวจสอบสูตร
| n | 3n-2 | 3n-1 | ผลคูณ/2 |
|---|---|---|---|
| 1 | 1 | 2 | 1 |
| 2 | 4 | 5 | 10 |
| 3 | 7 | 8 | 28 |
| 4 | 10 | 11 | 55 |
| 5 | 13 | 14 | 91 |
ตัวอย่าง
n = 20
Output: 1711
คำนวณ: (3×20-2)(3×20-1)/2 = 58×59/2 = 1711
ตัวอย่างโค้ด
#include <iostream>
using namespace std;
long long centeredNonagonal(int n) {
// ใช้ long long ป้องกัน overflow สำหรับ n ใหญ่
return 1LL * (3 * n - 2) * (3 * n - 1) / 2;
}
void printSeries(int n) {
cout << "Centered Nonagonal Series: ";
for (int i = 1; i <= n; i++) {
cout << centeredNonagonal(i);
if (i < n) cout << " ";
}
cout << endl;
}
int main() {
int n = 20;
cout << "Centered Nonagonal Number (n=" << n << "): "
<< centeredNonagonal(n) << endl;
n = 10;
printSeries(n);
return 0;
}
ผลลัพธ์
Centered Nonagonal Number (n=20): 1711 Centered Nonagonal Series: 1 10 28 55 91 136 190 253 325 406
ความสัมพันธ์กับ Figurate Numbers
Centered Nonagonal Number เป็นประเภทหนึ่งของ Centered Polygonal Numbers:
- Centered Triangular: (3n² - 3n + 2)/2
- Centered Square: 2n(n-1) + 1
- Centered Pentagonal: (5n² - 5n + 2)/2
- Centered Hexagonal: 3n(n-1) + 1
- Centered Heptagonal: (7n² - 7n + 2)/2
- Centered Octagonal: 4n(n-1) + 1
- Centered Nonagonal: (3n-2)(3n-1)/2
การหาค่า n จากค่าที่กำหนด (Inverse)
แก้สมการ (3n-2)(3n-1)/2 = x
9n² - 9n + 2 = 2x 9n² - 9n + (2 - 2x) = 0 n = [9 + √(81 - 36(2-2x))] / 18 = [9 + √(9 + 72x)] / 18
ถ้า n เป็นจำนวนเต็ม → x เป็น centered nonagonal number
ความซับซ้อน
- เวลา: O(1) ต่อการคำนวณ 1 ค่า, O(n) สำหรับพิมพ์ series
- พื้นที่: O(1)