在for循环中输出每x次迭代
Output every x iterations in a for-loop
所以我有这样的代码:
for (int i=1000; i<2016; i++ )
{
cout << "The year is " << i << endl;
}
但是假设我不想让这段代码打印所有年份,而只是选择一些年份,假设是500年,1000年,1500年和2000年。
我试着把这个添加到代码中:
for (int i=1000; i<2016; i++ )
if ( i == 500 , i == 1000 , i == 1500 , i == 2000){
cout << "The year is " << i << endl;
}
但是没有成功。
我如何让代码只写我选择的年份?
注。间隔是随机的,不是每500个。
如果您希望每100次迭代发生一些事情,请使用模算子%
:
for (int i=500; i<20000; i++) {
if (i % 100 == 0) cout << i << endl;
你的代码是不正确的,因为你错误地使用了(不想要的)逗号操作符,所以你的测试相当于if (i==2000)
我认为您在每个if-condition之间缺少||
(OR)。比如
if ( i == 500 || i == 1000 || i == 1500 || i == 2000)
如果你提前知道年份:
const auto Years[] = {500, 742, 1000, 1234, 2000, 2015};
for (auto year : Years)
std::cout << "The year is " << year << 'n';
我不是一个很好的c++程序员,但是执行任务的最直接的方法似乎是:
for (int i = 500; i < 2016; i += 500) {
cout << "The year is " << i << endl;
}
相关文章:
- 集合上的输出迭代器:assign和increment迭代器
- 访问要输出的矢量迭代器元素
- 在静态库中使用输出迭代器时出现链接器错误
- 在插入容器之前转换输出迭代器
- 重复输出的类型是怎么回事,它如何区分迭代次数和 Ascii 代码?
- 根据 boost::iterator_facade 定义基于代理的输出迭代器
- 通过地图和打印内容迭代时,倒出输出
- 在循环输出中重用矢量 "Killed" 在几次迭代后
- 为什么每次“for”迭代都会输出 4 次
- 如何使用迭代器显示以下代码的输出
- C++:为什么输出迭代器不支持比较操作?
- 输入迭代器可以重复读取,而输出迭代器只能写入一次
- 该程序无法显示第二个迭代的输出
- 是C 正向/BIDI/随机迭代器总是输出迭代器
- Qt 使用迭代器重载了 qtextstream 输出运算符
- for 循环中的迭代次数错误.也得到意想不到的输出
- 在每次第 n 次迭代时将输出写入新文件
- 每n次迭代将输出写入一个文件
- stl风格的算法:如何管理输出迭代器
- 有趣的迭代输出