Видео: Основы программирования. Оператор ветвления if. Урок 7 [GeekBrains]
Любой интеллект в животном мире пользуется определёнными алгоритмами предпочтения, которые выражают личные «хочу». Можно сказать, что потенциально искусственные интеллекты тоже будут пользоваться чем-то подобным. А пока к реализации человеческого восприятия мира наиболее близко подошли именно благодаря алгоритмам с ветвлением. И они будут рассмотрены в данной статье с объяснением их логики и особенностей.
Видео: Алгоритмическая конструкция ветвление Игра вопрос ответ КУМИР
Что такое алгоритм с ветвлением в программировании?
Прежде чем приступить к основной теме, необходимо сделать небольшой экскурс в теорию. Алгоритмом называется четкая последовательность действий, которая направлена на то, чтобы достичь определённой цели или решить поставленную задачу. Делятся они на три типа:
- Линейные.
- С ветвлением.
- Циклические.
Нас интересует алгоритм с ветвлением, поэтому описан будет только он. Данная команда предлагает выбор процедуры или функции, и при соответствии определённым условиям, которые есть на данный момент, происходит выбор. Структура такого алгоритма называется разветвляющейся. Она обеспечивает выбор между несколькими альтернативами. Каждый из путей (в большинстве случаев) ведет к общей точке в программном коде. Важным ветвление является и тогда, когда необходимо пропустить определённое действие. Используется оно и тогда, когда пользователю предоставляется выбор, и этот выбор следует запомнить для дальнейшей работы. В целом полезны и легки эти алгоритмы с ветвлениями. 6 класс теоретически даже сможет понять и реализовать полученные знания на практике. Если есть вопросы – прочитайте статью, скорее всего, после завершения этого процесса их не останется.
Использование алгоритмов с ветвлением
Так уж получилось, что возникновение ситуаций, когда всё можно будет сделать без выбора, ничтожно маловероятно, поэтому необходимо продумывать, какие варианты потенциально могут возникнуть. Так, проводя параллель с жизнью, можно привести классический пример с погодой: если на улице жарко, то необходимо надеть майку и шорты, если идёт снег – курточку. Случаются и более сложные выборы, от которых может зависеть дальнейшая жизнь человека (или работы программы). Алгоритмы разнятся своей сложностью и детализированием описания шагов. Так, для создания ориентира для себя можно использовать простое ограниченное описание (что и как должно работать). Но с компьютером такой фокус не прокатит. Здесь необходимо пошаговое решение каждой задачи. Алгоритм включает в себя ветвление, которое, в свою очередь, может продолжаться практически бесконечно. Хотя на практике редактирование такого написанного кода является проблемным. Чтобы вы имели представление, предлагаем ознакомиться с такими формами:
Видео: Урок 2 Постановка задачи и алгоритмы ч2
- Простая. Если вы хотите быть здоровым, вам необходимо заниматься спортом.
- Сложная. Есть желание быть здоровым? Если да, то занимайтесь спортом. Если нет, то валяйтесь на диване и смотрите телевизор.
- Сложная форма с неполным ветвлением. Необходимо выйти на улицу. Идет ли дождь? Если нет, можно сразу выходить. Если идёт – возьмите зонтик. И только потом выходите на улицу.
Создание алгоритмов в общих чертах
Вот вы создаёте алгоритм с ветвлением, по которому будет выполняться программа. Если есть желание изобразить выбор схематически, то подойдёт ромб. Верхушкой обозначим передачу сигнала, а в остальные три стороны осуществляется рассылка ответов. При этом вовсе необязательно использовать их все: достаточно и двух. Ромб, кстати, это оператор ветвления, который используется для обозначения этого действия. Но мы немного забежали вперёд. С чего начинается любая работа? С получения данных! При построении алгоритма не забывайте указывать, с какими данными идёт работа. Также всегда должно быть логическое завершение. Ведь алгоритм, который невесть где обрывается, может вызвать «вечное» использование процессора, и игра попросту зависнет. Что, конечно, вызовет негативную реакцию.
Что необходимо, чтобы создать схему и практическую реализацию алгоритма?
Прежде чем приступать к рисовке схемы, необходимо хорошо выучить, что за что отвечает, чтобы в будущем не было логических ошибок. Также необходимо выучить все нюансы реализации алгоритмов с ветвлением на тех языках программирования, на которых планируется написание программы. Чтобы в будущем не возникало проблем, необходимо отточить своё умение на «чистых листах». Ведь если понять, как и что работает, то реализация в большинстве случаев не составит проблем. Если проблемы всё же возникают, попробуйте создавать алгоритм минимальными работающими шажками, чтобы выявить проблему.
Особенности при создании
Потенциально ветвления могут быть бесконечными. Поэтому при их создании можете не ограничивать себя количеством условий (хотя в конечном итоге чем их больше, тем труднее ориентироваться). Также немного о полном и неполном ветвлении. Что представляет собой первое, наверное, понятно. А в каких случаях используется неполное и как определить, что оно необходимо? Если есть необходимость провести дополнительные действия, в связи с особенностью построения программы, и одновременно есть вариант простого продолжения, или было нужно впихнуть строки кода туда, где они не предусмотрены – то это как раз тот случай. И схема построения будет неполной, но в полном объеме выполняющей свой функционал.
Видео: [C#] Урок #5. Конструкции ветвления (if, else, switch)
Пример
Давайте, чтобы усвоить полученные знания лучше, разберёмся со всей сказанной информацией на примере простой программки. Ведь хоть и лёгок алгоритм с ветвлением, примеры позволят лучше разобраться, что и как. Допустим, вы пишете простую игрушку, в которой управляемый человеком персонаж должен убежать от компьютерных персонажей. Если между ними происходит контакт, то по истечении небольшого промежутка времени осуществляется какое-то действие (герой начинает медленнее бежать или вообще проигрывает). Что и как тут сделать – выбор за вами. Но всё же следует учитывать целый аспект всевозможных действий, которые открываются перед программистом для реализации задуманного. Так, можно отнимать «жизни» у персонажа или сделать так, чтобы на управляемого человеком героя накладывался определённый эффект вроде замедления, и действенным он был, пока работает цикл, который, в свою очередь, работает в определённом временном промежутке. Конечный выбор за вами.
Послесловие
Итак, под конец необходимо подвести итоги всему, что было сказано выше. Освоить составляющие программирования, в том числе и алгоритмы с ветвлением, не составляет труда, если хорошо постараться. Необходимо изучить все, с чем придётся работать. Также для лучшего эффекта полезной будет практическая реализация полученных знаний. Можете начать с чего-то простого, прорабатывая алгоритм на бумаге или в электронном файле, постепенно перенося его в среду разработки.