Full transcript
0:00Приветствую вас, друзья. Меня зовут
0:01Сергей, и мы с вами продолжаем изучать
0:04основы программирования на примере языка
0:06C++. В прошлый раз мы изучили с вами
0:09конструкцию Switch, а сегодня мы
0:11поговорим о том, что такое циклы, для
0:14чего они нужны, и рассмотрим цикл while
0:18и цикл - это конструкция повторения. При
0:21помощи цикла можно выполнить какое-либо
0:24действие, которое вам нужно, нужное
0:26количество раз, которое вам нужно. в
0:29зависимости от какого-либо условия,
0:32которое вы сами определяете. Давайте
0:34приведём небольшой пример. Для этого нам
0:36понадобится see с каким-то текстом.
0:45Пусть будет такая запись. Текст вывелся
0:48на экран и в конце ende.
0:52Как вы уже, наверное, догадываетесь,
0:53такая запись просто выведет нам в
0:55консоль определённый текст. В данном
0:58случае это надпись текст вывелся на
0:59экран.
1:01А если мы захотим с вами вывести такой
1:04текст несколько раз, то в текущих
1:07реалиях, при текущем нашем знании языка
1:11программирования, мы должны будем это
1:13делать несколько раз. Ну вот сейчас у
1:17нас получается текст будет выводиться
1:19пять раз.
1:21Допустим, пять раз - это ещё достаточно
1:24мало. А что, если мы хотим вывести текст
1:27100 раз, 200, либо выполнить какую-то
1:30операцию очень много раз? То есть
1:33неужели нам каждый раз нужно ручками это
1:37всё писать? На самом деле нет. Вот для
1:40этого и нужны циклы. Давайте пока удалим
1:44этот текст.
1:46Точнее, не весь текст, а некоторая часть
1:50нам ещё понадобится. И посмотрим на
1:53синтаксис первого цикла, который мы
1:55будем изучать. Это цикл Wi. Он имеет вот
2:00такой вот вид, чем-то похож на
2:03конструкцию if. Итак, в круглые скобки
2:07цикла while помещается какое-то
2:10утверждение либо выражение, и если оно
2:14истинно, то то, что внутри фигурных
2:17скобочек этого цикла, будет выполняться.
2:20Сейчас мы поместим внутрь этого цикла
2:24нашу запись, которая будет выводить нам
2:28текст. Но для того, чтобы
2:32наша программа заработала, этого ещё
2:34мало. Нам нужно каким-то образом
2:38отслеживать и производить условие,
2:42которое будет проверяться в цикле. Ещё
2:44раз, как это всё будет работать. Когда
2:46наша программа дойдёт до одиннадцатой
2:48строчки кода, то она проверяет, истинно
2:53ли условие в цикле while. Если это
2:56утверждение истина, то есть возвращает
2:58true,
3:00тогда выполняется тело цикла, то, что
3:03находится внутри его фигурных скобочек.
3:06В данном случае выведется сообщение:
3:08"Текст вывелся на экран".
3:10Далее мы с четырнадцатой строчки кода
3:12попадаем опять в одиннадцатую строчку
3:14кода, потому что в этом и есть вся суть
3:17цикла. И выражение проверяется опять.
3:21Если выражение истина, то тогда тело
3:24цикла выполняется снова.
3:28Итак, до тех пор, пока выражение в этих
3:31круглых скобочках не будет ложно. То
3:34есть то, что здесь внутри, не вернёт
3:36флS. Вот вам, кстати, и момент, на
3:39который следует обратить внимание. Если
3:41вашей программе не будет предусмотрено
3:44изменение, а где-то в теле цикла вот
3:47этого утверждения или выражения, которое
3:50будет в его круглых скобочках, в таком
3:54случае цикл будет вечным, и ваша
3:56программа будет до потери пульса,
3:58наверное, вашего пульса, выводить текст
4:01сообщения. А, собственно, текст выявился
4:04на экран, либо выполнять то действие,
4:06которое находится у него в теле. Чтож,
4:08для того, чтобы заставить наш цикл
4:10работать, нам нужны какие-то переменные,
4:13с помощью которых мы организуем
4:14выражение, которое будет, а, проверяться
4:17вот здесь в цикле. Давайте, это будет
4:21переменная A, её значение будет ноль.
4:25И в цикле у нас будет вот такое
4:27выражение: A меньше 10. То есть пока
4:32наша переменная A будет меньше 10, то
4:37это выражение будет возвращать true, то
4:40есть истину. А значит, наш цикл будет
4:43выполняться. В данном случае пока наша
4:46программа будет выполняться, точнее, наш
4:48цикл будет работать бесконечно, потому
4:50что у нас равно нулю и у нас всегда
4:53будет меньше 10.
4:55Но если внутри цикла мы сделаем вот
4:57такую вот штуку.
4:59Кстати, кто не знает, это называется
5:02инкремент. И у меня есть видео о том,
5:05что такое инкремент и декремент. Если вы
5:07не знаете, что это такое, лучше видео
5:09посмотрите. Но вкратце скажу, что такая
5:12запись увеличивает нашу интовую
5:14переменную на единицу. То есть в данном
5:17случае у нас A после шестнадцатой
5:20строчки уже будет не ноль, а один.
5:23Далее, когда цикл выполнил выполнится,
5:26ещё раз, 2 3 4 5 и так до девяти.
5:33Когда же переменная A будет уже 10,
5:39то выражение вот это вернёт фольс,
5:42потому что 10 не меньше 10. Таким
5:45образом, тело цикла не выполнится и
5:47программа пойдёт дальше. Давайте
5:49посмотрим, что у нас получилось.
5:51Запустим нашу программку
5:53и посмотрим. Итак, у нас 10 раз текст
5:57вывелся на экран. То есть наш цикл
5:59отработал согласно условию, которому мы
6:01ему здесь задарили. Давайте немножечко
6:04модифицируем нашу программку, чтобы
6:05более наглядно выглядело, более наглядно
6:08посмотреть, что у нас там происходит. А
6:10именно, мы будем выводить
6:13надпись
6:14переменная
6:17A равна и выводить нашу переменную A.
6:22Теперь мы будем точно видеть, сколько
6:25раз отработал наш цикл и какое значение
6:30при каждой итерации цикла
6:33имела наша переменная A. Итерация цикла
6:36- это каждое повторение действия,
6:39которое находится в теле цикла. То есть
6:41вот один раз мы выполнили код внутри
6:43цикла- это одна итерация,
6:46то есть опять выполнили, вторая итерация
6:48и так далее. Количество итерации у нас
6:50зависит от того, какое у нас условие в
6:53круглых скобках цикла, и возвращает оно
6:56true либо false. Запускаем нашу
6:58программку и смотрим, что у нас
7:00получается. Переменная A равна нулю,
7:03единице, двойке, тройки, четвёрки,
7:05пятёрки, шестёрки, семёрки, восьмёрки,
7:07девятки. Ну и так до девятки. Как только
7:10наша переменная A стала равна десяти в
7:15последнем
7:16в последней итерации, то условие цикла
7:20while перестало выполняться, A перестало
7:23быть меньше десяти. И поэтому наша
7:26программа закончила выполнение цикла.
7:28Давайте немножечко поиграемся с нашей
7:29переменной. И давайте
7:32давайте немножечко изменим наше условие.
7:34Пускай здесь будет не 10, ну а допустим,
7:3720.
7:39Теперь
7:41вот эта запись, которая у нас внутри
7:44цикла, отработала 20 раз. 20 раз я
7:47говорю, потому что нулевой раз тоже
7:50считается.
7:52То есть, хотя у нас здесь получается
7:55переменна равно 19, но нулевой раз у нас
7:58тоже считается, поэтому всего цикл
8:01отработал
8:0220 раз. Также мы можем начать отсчёт не
8:05от нуля, ну, а, допустим, от 10ти.
8:08Нам-то без разницы, потому что нам
8:10главное, чтобы выполнялось условие здесь
8:12в скобочках. Если a меньше 20, а в
8:15данном случае у нас начинается от счёта
8:1710, то условие true и значит цикл
8:21выполнится. Ну, в данном случае 10 раз.
8:23Только отсчёт у нас начался от 10ти и
8:25дошёл до 19. На этом у меня пока всё. В
8:27следующих уроках мы продолжим изучать
8:30циклы. И если вам понравилось это видео
8:33и вы хотите видеть следующее, то не
8:34забудьте поставить лайк. Также
8:36подписывайтесь на канал, чтобы не
8:38пропустить следующий выпуск. Ну и,
8:40конечно же, всем спасибо за внимание.
8:42Пока.