LINUX.ORG.RU

Странный for


0

0

Почему в этом цикле for первая переменная, которую выводит cout - 65, а не 2?

#include <iostream> using namespace std; int main() { int a, i, j; for (i=2; i<100; i++) { cout <<"i - "<<i<<endl; for (j=2; j<=(i/j); j++) { cout<<"i2 - "<<i<<" j - "<<j<<endl; }

} return 0; }

anonymous

В смысле так.
Почему в этом цикле for первая переменная, которую выводит cout - 65, а не 2?

#include <iostream>
using namespace std;
int main()
{
	int a, i, j;
	for (i=2; i<100; i++) {
		cout <<"i - "<<i<<endl;
		for (j=2; j<=(i/j); j++) {
			
			cout<<"i2 - "<<i<<"  j - "<<j<<endl;
		}


	}
	return 0;
}

anonymous
()
Ответ на: комментарий от anonymous

i - 2
i - 3
i - 4
i2 - 4  j - 2
i - 5
i2 - 5  j - 2
i - 6
i2 - 6  j - 2
i - 7
i2 - 7  j - 2
...
i2 - 98  j - 9
i - 99
i2 - 99  j - 2
i2 - 99  j - 3
i2 - 99  j - 4
i2 - 99  j - 5
i2 - 99  j - 6
i2 - 99  j - 7
i2 - 99  j - 8
i2 - 99  j - 9

Davidov ★★★★
()
Ответ на: комментарий от anonymous

Попробуйте инициализировать переменную при объявлении.

Т.е. :

int a, i=2, j;

for (; i<100; i++)

wfrr ★★☆
()
Ответ на: комментарий от imp

О точняк. Вот блин корявая венда... Но проверять надо на всех платформах, имхо.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.