Какво е For Loop?
Това е структура за контрол на повторението, която ни помага да итерираме над секция от C ++ код за фиксиран брой пъти. Цикълът for се изпълнява, при условие че тестовият израз е истина. Цикълът прекратява изпълнението незабавно тестовият израз става фалшив. Това означава, че преди изпълнението на тялото на цикъла във всяка итерация, условието трябва да бъде оценено. Ако оценката връща вярно, тялото на цикъла се изпълнява. Ако оценката върне false, изпълнението на тялото на цикъла се прекратява.
В този урок за C ++ ще научите:
- Какво е For Loop?
- Как работи цикълът?
- Кога да използвам цикъл for?
- Синтаксис на за цикъл
- Пример 1
- Пример 2
Как работи цикълът?
Цикълът for работи по следния начин:
Обяснение на диаграмата:
- Компилаторът на език C ++ започва с оценка на инициализацията. Това се прави само веднъж, когато започне изпълнението.
- Тестовият израз се оценява / изпълнява.
- Ако тестовият израз е истина, тялото на цикъла се изпълнява и тестовият израз се актуализира. Ако изразът стане false, цикълът for се прекратява.
- След изпълнението на тестовия израз, инкрементът се изпълнява, за да се увеличи стойността на контролната променлива на цикъла.
- Тестовият израз се оценява отново и процесът продължава, докато изразът стане фалшив.
- Ако exoression е false, операторите на тялото на цикъла се пропускат.
Забележка : Тестовият израз се актуализира след всяка итерация. Това означава, че във всяка итерация се изпълняват различни стойности на контролната променлива на цикъла.
Кога да използвам цикъл for?
Цикълът for трябва да се използва, когато:
- Имате фиксиран брой итерации.
- Знаете точния брой повторения.
Синтаксис на за цикъл
Ето синтаксиса на цикъла for:
for ( initialization;condition;increment ) {statement(s);}
Ето обяснение на горните параметри:
- Инициализация: Тази част се изпълнява първо и само веднъж. Тук декларирате и инициализирате контролни променливи на цикъла. Контролните променливи на цикъла могат да бъдат повече от една и техните стойности ще се променят след всяка итерация. Стойностите им обаче трябва да бъдат оценени, преди да се изпълни итерация.
- Състояние: Тази част се изпълнява следващата. За да бъде изпълнено тялото на цикъла, това условие трябва да е вярно. Ако условието е невярно, изпълнението ще премине към инструкции веднага след тялото на цикъла. Ако условието е невярно при първата оценка, тялото на цикъла никога няма да бъде изпълнено.
- Нарастване: След като тялото на цикъла е изпълнено, контролът преминава към нарастването. Можете да пропуснете тази част и вместо това да използвате точка и запетая.
- Отново се оценява състоянието. Ако е вярно, тялото на цикъла се изпълнява и това продължава. Цикълът се прекратява незабавно, състоянието става невярно.
Пример 1
#includeusing namespace std;int main() {for (int x=0; x<5; x=x+1) {cout << "X is: " << x << endl;}return 0;}
Изход:
Ето екранна снимка на кода:
Обяснение на кода:
- Включване на заглавния файл на iostream в нашия код. Това ще ни позволи да четем от и да пишем на конзолата.
- Включително std пространството от имена, за да се използват класовете и функциите му, без да го извиквате.
- Извикване на функцията main (), в която трябва да се добави логиката на програмата. {Маркира начало на тялото на функцията main ().
- Създаване на цикъл for. Инициализацията създава целочислена променлива x и й присвоява стойност 0. Условието гласи, че стойността на x трябва да е по-малка от 5. Инкрементът увеличава стойността на x с 1 след всяка итерация. {Отбелязва началото на тялото на цикъла for.
- За да отпечатате стойността на променлива x заедно с друг текст на конзолата. Endl е ключова дума C ++, която означава краен ред. Курсорът ще се отпечата в следващия ред в следващата итерация.
- Край на тялото на цикъла.
- Функцията main () трябва да върне стойност, ако програмата работи нормално.
- Край на тялото на основната () функция.
Пример 2
#includeusing namespace std;int main(){int x, num, factorial = 1;cout << "Type positive number: ";cin>> num;for (x = 1; x <= num; ++x) {factorial *= x; // factorial = factorial * x;}cout << "Factorial of " << num << " = " << factorial;return 0;}
Изход:
Ето екранна снимка на кода:
Обяснение на кода:
- Включване на заглавния файл на iostream в нашия код. Това ще ни позволи да четем от и да пишем на конзолата.
- Включително std пространството от имена, за да се използват класовете и функциите му, без да го извиквате.
- Извикване на функцията main (), в която трябва да се добави логиката на програмата.
- {Маркира начало на тялото на функцията main ().
- Деклариране на целочислени променливи, x, num и факториал. На променливата факториал е присвоена стойност 1.
- Отпечатване на текст върху конзолата.
- Подкана от потребителя да въведе стойност за променлива num.
- Създаване на цикъл for. Инициализацията създава целочислена променлива x и й присвоява стойност 1. Условието гласи, че стойността на x трябва да бъде по-малка или равна на стойността на променлива num. Инкрементът увеличава стойността на x с 1 след всяка итерация. {Отбелязва началото на тялото на цикъла for.
- Изчисляване на стойността на факториал с помощта на формулата факториал = факториал * x.
- Край на тялото на цикъла.
- За да отпечатате стойността на променливите num и факториал заедно с друг текст на конзолата.
- Функцията main () трябва да върне стойност, ако програмата работи нормално.
- Край на тялото на основната () функция.
Обобщение
- Цикълът for повтаря секция от C ++ код за фиксиран брой пъти.
- Цикълът for работи, докато условието на теста е вярно.
- Инициализиращата част на for loop е за деклариране и инициализиране на всякакви контролни променливи на цикъл.
- Условната част на цикъл for трябва да е вярна, за да бъде изпълнено тялото на цикъла.
- Частта за увеличаване на цикъла for може да бъде заменена с точка и запетая.