c++ - 如何制作这个数字形状?
问题描述
编写一个程序来显示下面的 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;
}
解决方案
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 负责第一列中的起始编号。
推荐阅读
- php - 如何更改 PHP 中的状态?
- android - NoSuchMethodError getLifeCycle()
- java - 在新的 Android Studio 中初始化一个 Stripe 对象
- node.js - Req.user 未定义,但在通过 Postman 应用程序发送相同的帖子请求时工作正常
- paypal - 如何在 Checkout.com 的测试环境中测试标记的事务响应
- javascript - Webpack(模块构建失败)
- python-3.x - 无法迭代 multiprocessing.managers.DictProxy
- google-visualization - 如何自动设置格式化值?
- php - 在两个日期之间度过每一天
- laravel - Laravel `orWhereIn` 使 `whereNotIn` 不生效