首页 > 解决方案 > 如何制作这个数字形状?

问题描述

编写一个程序来显示下面的 n 行模式,其中 n 的范围在 1 到 100 之间。变量 n 应该由用户输入。如果用户输入在 1 到 100 之间,则输出如下所示的金字塔,否则提示用户再次输入 n。

这是示例输出:输入行数:6

1

2 3

3 4 5

4 5 6 7

5 6 7 8 9

6 7 8 9 10 11

在此处输入图片描述

这是我的代码,它显示了一个接近的答案,但不正确。

 int num=1  ,  counter=1;
   cout << "Enter the number of rows: " ;
   cin>>num;

       for(int i=0;i<=num;i++)
       {
           for(int j=0;j<=i;j++)
           {
               cout<<counter<<" ";
               counter++;
           }
           cout<<endl;
       }

标签: c++

解决方案


int num = 1, counter = 1, temp = 1;
cout << "Enter the number of rows: ";
cin >> num;

for (int i = 0; i < num; i++)
{
    for (int j = 0; j <= i; j++)
    {
        cout << temp << " ";
        temp++;
    }
    counter++;
    temp = counter;
    cout << endl;
}

变量 temp 用作行的计数器,同时变量 counter 负责第一列中的起始编号。


推荐阅读