Я столкнулся с приведенной ниже программой на С++ (источник):
#include <iostream>
int main()
{
for (int i = 0; i < 300; i++)
std::cout << i << " " << i * 12345678 << std::endl;
}
Он похож на простую программу и дает правильный результат на моей локальной машине, например:
0 0
1 12345678
2 24691356
...
297 -628300930
298 -615955252
299 -603609574
Но в интерактивных IDE, таких как codechef, он дает следующий результат:
0 0
1 12345678
2 24691356
...
4167 -95167326
4168 -82821648
4169 -7047597
Почему цикл for
не заканчивается на 300? Также эта программа всегда заканчивается на 4169
. Почему 4169
, а не какое-то другое значение?