For ループの N回に x回何かを実行したい場合


// == x_times_every_N.cc

// For ループの N回に x回何かを実行したい場合

#include

const int N = 7 ;
const int X = 3 ;

int main()
{
for (int i = 0; i < 50; i++)
{
if(i % N >= 0 &&
i % N < X )
{
std::cout << i << "\t" ;
}
}
std::cout << "\n" ;

return 0 ;
}


0 1 2 7 8 9 14 15 16 21 22 23 28 29 30 35 36 37 42 43 44 49


// 改良版【while ループを使用】
// X回に1回の実行(Xは小数、1未満の数も可)

#include
const double INTERVAL_DECIMAL = 2.5 ;

int main()
{
int interval_step = 0;

for(int i=0; i<=20; i++)
{
std::cout << "i: " << i << "\n" ;
while(double(i) / double(INTERVAL_DECIMAL) > interval_step )
{
interval_step++ ;
std::cout << "\tinterval_step: " << interval_step << "\n" ;
}
}
return 0 ;
}