Другое

Цикл for C: что такое цикл в программировании и как он работает?

Lorem ipsum dolor

Цикл в программировании нужен для того, чтобы повторить какое-то действие программы несколько раз. Цикл — это неотъемлемая часть программирования, поэтому важно понимать их действие. Если рассматривать циклы в С, то они бывают 3-х видов:

  • цикл for;

  • цикл while;

  • цикл do...while.

Сегодня в статье мы обсудим цикл «for» в С.

 

Цикл «for» в С

Цикл «for» в С может выполнять одинаковое количество действий определенное количество раз, которое мы ему зададим. Например, мы можем 5 сотен раз вывести сообщение «Привет!», если нам это нужно.

Общее структурированное построение цикла «for» выглядит так:

for («указываем первоначальную величину счетчика цикла», «условие исполнения цикла», «шаг исполнения цикла») {

«блок операций цикла»

}

Давайте разберем приведенный выше шаблон цикла «for» в С:

  • «указываем первоначальную величину счетчика цикла» здесь создается переменная для нашего цикла с какой-либо первоначальной величиной, эта команда исполняется до старта самого цикла; величину этой переменной обязательно нужно указывать;

  • «условие исполнения цикла» здесь указывается логическое условие, которое обеспечивает работу нашего цикла, пока оно будет истинным;

  • «шаг исполнения цикла» здесь указывается значение шага переключения нашего счетчика цикла после каждого законченного прохождения самого цикла, то есть тут указывается величина, на которую счетчик цикла будет увеличивать или уменьшать свое значение;

  • «блок операций цикла» здесь указывается код, который должен выполняться в процессе прохождения самого цикла.

Важное замечание: «первоначальная переменная», «условие» и «шаг» в цикле (то, что указывается в круглых скобках "()") обязательно должны отделяться между собой «точкой с запятой» ";", иначе работать не будут.

 

Цикл «for» в С: пример кода

Давайте разработаем программку, которая сможет высчитывать суммарность всех чисел от 1 и до 99.

Вот каким будет код:

#include

using namespace std;

 

int main()

{

int i; // i — это цикличный счетчик

int sum = 0; // вычисляем суммарность чисел от 1 до 99 .

setlocale(0, "");

for (i = 1; i<= 99; i++) // присваиваем начальному значению переменной 1, а конечному 99 и присваиваем значение цикличному шагу величину 1, то есть i++, это то же самое, если бы мы написали: i=i+1

{

sum = sum + i;

}

cout<< "Полученная суммарность чисел от 1 до 99 будет равняться: " << sum << endl;

return 0;

}

 

Если взять и пропустить через компилирование написанный выше скрипт, то у нас в результате будет высчитанная суммарность всех чисел от 0 и до 99. Теперь представьте, если такой подсчет вести «вручную», сколько на это нужно было бы потратить времени? А если нужно было бы сложить все числа до 1000 или до миллиона? Цикл «for» в С исполнит за нас самые рутинные задания.

 

Вложенные циклы в С

Цикл «for» в С может быть вложенным это означает, что внутри одного цикла «for» может располагаться другой цикл.

Пример кода, когда нужно вывести числа от 0 и до 99 по 10 в каждой строке:

int main() {

for(int i=0; i<10; i++) // задаем цикл для десятков

{

for (int j = 0; j< 5; j++) // задаем цикл для единиц

{

printf("- ", i * 10 + j); // выведем результат вычисления в 2 знакоместа и backspase

}

printf("\n"); // переводим запись значений на новую строчку во внешнем цикле

}

getchar();

return 0;

}

 

Как прервать цикл

Бывают циклы, для которых не нужно ждать их окончания, потому что это будет очень долго. Например, мы задаем цикл по поиску какого-либо значения в массиве. И мы хотим, чтобы при найденном конкретном значении цикл завершал свою работу, а не заканчивал до конца обработку массива.

В это случае нужно применять специальный оператор для прерывания циклов — break. Либо можно пропускать часть операторов большого цикла и начинать прохождение цикла заново при помощи оператора continue.

 

Цикл «for» в С: возможные проблемы

Цикл «фор» в С — это достаточно удобный инструмент, если применять его правильно. Но он может нести в себе скрытые угрозы. Обычно на такие угрозы натыкаются молодые и неопытные программисты.

Вот несколько возможных проблем с циклом:

  1. Сегфолт или ошибка сегментации. У нее множество причин возникновения, но что касается циклов в С, то она возникает, когда переменной «i» в цикле не было задано первоначальное значение. Если этой переменной не задать значение, тогда она вытягивает из программы всякий «мусор», а с «мусорным значением» невозможно сделать ничего, поэтому в лучшем случае программа перестает работать.

  2. Бесконечный цикл. Если циклу задать неправильное условие или неправильный шаг счетчика, то можно увести его в «бесконечность», то есть он будет исполняться постоянно до тех пор, пока будет истинным его условие, а его условие будет истинным всегда. Поэтому очень важно перед написанием цикла убедиться, что все сделано правильно и цикл не будет бесконечным. Либо не нужно лениться применять оператор break, чтобы вовремя выйти из цикла.

 

Заключение

Цикл «for» в С — это довольно простая операция, но все равно она требует внимательности от программиста. Правильное написание цикла — это залог того, что он будет правильно выполняться.

Схожие статьи

Выгорание на работе: диагноз или неправильное построение трудового дня
Другое

Выгорание на работе: диагноз или неправильное построение трудового дня

Взлом Микротик: самые серьезные уязвимости и способы их проверки
Другое

Взлом Микротик: самые серьезные уязвимости и способы их проверки

Пошаговая установка Maven на Windows 10, Ubuntu и IntelliJ IDEA
Другое

Пошаговая установка Maven на Windows 10, Ubuntu и IntelliJ IDEA

Как стать продвинутым пользователем ПК в кратчайшие сроки без учителей?
Другое

Как стать продвинутым пользователем ПК в кратчайшие сроки без учителей?