该计划是关于打印以下模式:
* * * * * * * * * * * * * (13 stars)
* * * * * * * * * * * (11 stars)
* * * * * * * * ( 8 stars)
* * * * * ( 5 stars)
* * ( 2 stars)
我发现的逻辑是,当它更大11时,它将在下一行打印(i-2)
,如果
它小于或等于11然后将打印(i-3)
。
我不希望有一个现成的程序,但也会对解释感到满意。
答案 0 :(得分:1)
我想你想知道这样一个序列的一般术语是什么。一旦你知道编码很简单。
让我揭示对于具有一些有限数量的术语的所有这样的序列,对它有无限多的表示。因此,争论或担心你对序列的解释是对还是错是没有意义的。所以你生成数字的逻辑是正确的,虽然它不是唯一正确的答案。例如,另一个可能的解决方案是
你可以找到任何这样的可能的解决方案,在数学中找出一个可能的函数来表示所有的点集合被称为插值。这是interpolation calculator
答案 1 :(得分:-1)
#include<stdio.h>
main()
{
int n=14, c, k, temp;
temp = n;
for ( c = 0 ; c <= 4 ; c++ )
{
for( k = 2 ; k <= temp ; k++ )
printf("*");
if(k<=13)
{
temp=temp-3;
}
else
{
temp=temp-2;
}
printf("\t\t%d",k-2);
printf("\n");
}
return 0;
}