Чтобы создать программу на C++, которая печатает четные числа с помощью цикла for и не сталкивается с переполнением стека, вы можете рассмотреть следующие методы:
Метод 1: использование простого цикла for
#include <iostream>
int main() {
for (int i = 2; i <= 100; i += 2) {
std::cout << i << " ";
}
return 0;
}
В этом методе мы инициализируем счетчик цикла iравным 2 и увеличиваем его на 2 на каждой итерации. Цикл выполняется до тех пор, пока iне достигнет 100, печатая каждое четное число с помощью std::cout.
Метод 2: использование цикла for на основе диапазона (C++11 или выше)
#include <iostream>
#include <vector>
int main() {
std::vector<int> evenNumbers;
for (int i = 2; i <= 100; i += 2) {
evenNumbers.push_back(i);
}
for (const auto& num : evenNumbers) {
std::cout << num << " ";
}
return 0;
}
В этом методе мы используем цикл for на основе диапазона для перебора четных чисел и сохранения их в векторе с именем evenNumbers. Наконец, мы печатаем каждое число, используя std::coutв отдельном цикле.
Метод 3: использование цикла while
#include <iostream>
int main() {
int i = 2;
while (i <= 100) {
std::cout << i << " ";
i += 2;
}
return 0;
}
Здесь мы инициализируем iзначением 2 и увеличиваем его на 2 на каждой итерации. Цикл продолжается до тех пор, пока iне превысит 100, печатая каждое четное число с помощью std::cout.