C++ 星形数查找程序
本问题中,我们得到一个数字 n。我们的任务是编写一个C++ 星形数查找程序。
星形数是一种特殊数字,它表示一个中心六角星(六角星)。
部分星形数为 1、13、37、73、121。
让我们举个例子来理解这个问题
输入
n = 5
输出
121
解决方案方法
为找到第 n 个星形数,我们将使用公式。
让我们看看星形数的一般公式。
n = 2 -> 13 = 12 + 1 = 6(2) + 1 n = 3 -> 37 = 36 + 1 = 6(6) + 1 n = 4 -> 73 = 72 + 1 = 6(12) + 1 n = 5 -> 121 = 120 + 1 = 6(20) + 1
对于上述项,我们可以推导出第 n 项。
第 n 项 = 6(n * (n-1)) + 1。
验证它,
对于 n = 5,6(5 * 4) + 1 = 121
程序来说明我们的解决方案如何运作
示例
#include <iostream> using namespace std; int findStarNo(int n){ int starNo = ( 6*(n*(n - 1)) + 1 ); return starNo; } int main(){ int n = 4; cout<<"The star number is "<<findStarNo(n); return 0; }
输出
The star number is 73
广告