Что значит полное ветвление
Алгоритм разветвляющейся структуры. Полная, неполная форма организации ветвления
Учебная – углубление, обобщение и систематизация знаний по программированию.
Развивающая – развитие алгоритмического мышления, памяти, внимательности.
Воспитательная – развитие познавательного интереса, логического мышления.
1. Организационный момент.
Задание 2.1. Найти ошибку в записи программы:
Write ln (ввести значение R)
Readln (R);
L = 2*Pi*R;
S = Pi * Sqrt (R);
Writeln (‘S=’, S:7);
Writeln (‘l=’, l:7);
End.
Writeln (‘ввести значение R’);
Readln (R);
L := 2*Pi*R;
S := Pi * Sqr (R);
Writeln (‘S=’, S:7:2);
Writeln (‘l=’, l:7:2);
3. Введение нового материала
Задание 3.1.Чтобы определить вид алгоритмической структуры, которую мы будем изучать на уроке, необходимо отгадать ребус:
Разветвляющимся называется алгоритм в котором порядок выполнения действий зависит от некоторого условия.
Общий вид блок-схем алгоритмической структуры “ветвление”
Задание 3.2. Составим блок схему сказочного алгоритма: “Поехал Иван – Царевич на сером волке за Жар – Птицей. Ехал он, ехал, глядь – перед ним лежит огромный камень. На камне надпись: “Направо пойдешь – коня потеряешь, налево пойдешь – голову сложишь…”
Задание 3.3. По условию в блок-схеме определить результат:
Ответ: 1 – кислая среда; 2 – щелочная среда; 3- нейтральная среда.
Синтаксис на языке программирования TurboPascal:
Полное ветвление: if then else ;
Неполное ветвление: if then ;
— логическое выражение типа Boolean;
Если несколько, то они заключаются в скобки и объединяются ключевыми словами: and, or, not.
В TurboPascal, если в качестве оператора должны выполняться серия операторов, то они объединяются в операторные скобки Begin – end;
Задание 4.1. Даны два числа А и В. Найти наибольшее из них.
(Задача решается на основе этапов решения задач на ПК)
Найти: наибольшее из А или В
рис. 5.
Задание 4.2. Дополним “Задание 4.1.”: найти наибольшее из трех заданных чисел А, В, и С.
Обратим внимание на отличие в записи блок-схемы и программы.
Найти: наибольшее из трех чисел
Далее можно сравнить только два числа: если В>C, то В – наибольшее, иначе С – наибольшее.
рис. 6.
5. Подведение итогов.
Информатика. 7 класс
Электронное приложение к учебному пособию
Напишите нам
белый — основные материалы, обязательные для изучения;
голубой — примеры, иллюстрирующие основные материалы;
желтый — определения основных понятий;
светло-зеленый — исторические сведения, информация об ученых, внесших вклад в развитие информатики, и другие интересные факты.
В учебном пособии используются следующие условные обозначения:
— вопросы и задания для проверки знаний;
— раздел «Упражнения» содержит задания, при выполнении которых используется компьютер;
— раздел «Упражнения» содержит задания для выполнения в тетради;
— раздел «Упражнения» содержит задания, при выполнении которых может быть использована информация, размещенная на Национальном образовательном портале;
* — задание или пример для любознательных.
§ 12. Алгоритмическая конструкция ветвление
12.1. Команда ветвления
Довольно часто на поставленный вопрос человек получает ответ «да» или «нет». В зависимости от ответа он определяет свои действия и выполняет одну или другую команду (группу команд).
Роботы и другие технические устройства тоже могут выполнять различные действия в зависимости от условия. Если условие истинно (на вопрос получен ответ «Да»), то выполняются одни действия, если ложно, то другие.
Алгоритмическая конструкция ветвление обеспечивает выполнение одной или другой последовательности команд в зависимости от истинности или ложности некоторого условия.
Ветвление может изображаться на блок-схеме следующим образом:
В данной конструкции в прямоугольнике(ах) записываются команды алгоритма. При такой организации алгоритма может выполниться только одна из двух команд (последовательностей команд). Другая последовательность будет проигнорирована (пример 12.1).
Строка if условие > then является заголовком ветвления. Эту строку можно прочитать следующим образом: «Если условие верно, то». После слова then записывается последовательность команд 1, которая выполнится, если условие истинно. После слова else записывается последовательность команд 2, которая выполнится, если условие ложно. Слова begin и end; в данном случае играют роль операторных скобок. Обратите внимание, что перед словом else точка с запятой не ставится.
Ветвление может быть записано в полной или сокращенной форме.
Полная форма ветвления предусматривает организацию выполнения двух разных наборов команд, из которых выполняется только один. В сокращенной форме один из наборов команд (чаще по ответу «Нет») опускается. В этом случае, если условие ложное, то никакие действия не выполняются.
На блок-схеме сокращенная форма ветвления изображается следующим образом:
На языке программирования Pascal команда запишется следующим образом:
Алгоритм может содержать более одной конструкции ветвления (пример 12.3).
Пример 12.4. Решим задачу if 1 из встроенного задачника.
Робот должен закрасить клетку, которая находится за стеной. В зависимости от обстановки обход стены может осуществляться по-разному.
Вначале Робот должен сдвинуться вправо. Если стена снизу, то сверху свободно и можно обойти стену сверху, в противном случае Робот обходит стену снизу.
После обхода стены Робот закрашивает клетку. Алгоритм можно записать следующим образом:
Если сверху свободно, то
Пример 12.5. Робот находится на неизвестной клетке поля без линий. Он должен закрасить клетку слева от себя.
Для того чтобы закрасить клетку слева от себя, Робот должен переместиться влево, а затем закрасить клетку. Однако сделать это Робот сможет только тогда, когда не находится в клетках, являющихся левой границей поля. Поэтому, прежде чем сдвинуться влево, Робот должен проверить, свободно ли слева.
Результат работы данной программы зависит от начального положения Робота. Поэтому для проверки правильности работы программы необходимо подготовить начальные обстановки, которые дают разные ответы на вопрос: слева пусто?
12.2. Составные условия
В качестве условия в алгоритмах с циклами и ветвлениями используется любое понятное исполнителю этого алгоритма высказывание, которое может быть либо истинным, либо ложным.
Все условия, с которыми нам приходилось до сих пор встречаться при составлении алгоритмов для Робота, были простыми высказываниями. Однако для исполнителя Робот можно строить и составные условия.
Составное условие — условие, которое образуется из нескольких простых условий, соединенных друг с другом логическими операциями.
С логическими операциями над высказываниями вы уже знакомы. В PascalABC используются следующие логические операции:
Логическая операция | Запись в PascalABC |
Не | Not |
И | And |
Или | Or |
Система условий для исполнителя Робот построена таким образом, что можно обойтись без использования логической операции отрицания.
§ 8.7. Программирование разветвляющихся алгоритмов
Содержание
Алгоритмическая конструкция “ветвление”
Условная инструкция
Блок-схема
Задача 1 может быть реализована следующим образом
Задача 4. Составьте программу в которой черепаха рисует красный круг по часовой стрелке, а любого другого цвета (заданным в виде строки) – против часовой.
Задача 5. Даны три переменных целого типа a, b и c. Определить и вывести максимальное из трех значений.
Блок-схема
Идея алгоритма заключается в следующем. Предположим, что переменная a содержит максимальное значение, тогда остается сравнить max со значениями других переменных. В итоге, переменная max будет содержать максимальное значение.
Заметим, что в python разработано очень много стандартных функций, поэтому “изобретать велосипед не стоит”, а данная программа приведена лишь в демонстрационных целях. Для поиска максимального (или минимального) воспользуйтесь стандартной функцией max() (или min() ). К тому же, эта функция может содержать более чем два аргумента.
Но если вам все таки нужно зарезервировать имя заранее, вне блока, то вы можете использовать служебное слово None :
Вложенные инструкции if
Блок-схема
Обратите внимание, что блок вложенной инструкции if (англ. – nested conditional) содержит дополнительный отступ. Эту программу можно оформить иначе, с помощью логической операции and и служебного слова elif (сокращение от “иначе если“).
Задача 5 могла быть реализована подобным образом, но, в таком случае, код станет очень громоздким и будет восприниматься плохо. Глубина вложенности одной условной инструкции в другую не имеет границ. Но, не взирая на то, что наличие отступов делает программный код понятным, слишком большая глубина вложенности значительно усложняет его чтение, поэтому ее величина редко бывает более 4. Большую глубину вложенности можно избежать использованием логических операций или разбиением вложенной структуры на несколько последовательных условных инструкций, как в задании ниже.
Задача 7. Даны три целых числа. Найти количество положительных чисел в исходном наборе.
Переключатель. elif
При проектировании графических интерфейсов переключатель идеально соответствует элементу “радиокнопка” (от англ. radio button).
Тернарная операция
Условная инструкция не единственный способ реализации ветвлений в python. Во многих языках, в том числе, и в python, существует единственная операция, которая называется – тернарная (или условное выражение). Такое название она имеет потому, что в этой операции участвуют три операнда. Синтаксис тернарной операции таков:
Тернарная операция может сделать код очень лаконичным, но нужно быть внимательным, чтобы не допустить ошибки. Если тернарная операция входит в более сложное выражение, то, ввиду старшинства арифметических операций, её следует заключать в круглые скобки. Например, в этом коде:
Что значит полное ветвление
Команда ветвления в полной и неполной форме (урок 1)
(Данная разработка урока по теме «Команда ветвления в полной и неполной форме» составлена из расчета 1 час в неделю, информатика ведется только в 10 и 11 классах. До изучения этой темы в 10 классе обязательно рассмотрение темы «Алгоритм. Его свойства и способы записи», «Язык программирования Бейсик».)
Цель: рассмотреть команду ветвления в полной и неполной форме; выработать умения и навыки в составлении программ по блок-схемам и блок-схем по программам с командами ветвления
I. Организационный момент
II. Проверка домашнего задания.
Перед вами листочки с таинственными числами. Под каждым числом либо изображена геометрическая фигура, либо написан оператор. Вы должны ответить на вопросы, найти верный ответ и записать числа, соответствующие ответу, в таблицу:
Листочки с геометрическими фигурами и операторами языка программирования Бейсик
1. Эта геометрическая фигура используется в блок- схемах для обозначения начала и конца алгоритма.
2. Данная геометрическая фигура используется в блок-схемах для обозначения любого вычисления.
3. Для вывода данных на экран в Бейсике используется этот оператор.
4. Этот оператор используется для ввода данных с клавиатуры.
5. Для очистки экрана в Бейсике служит этот оператор.
6. Для проверки условия используется эта фигура
7. Ввод-вывод данных на экран обозначается этой геометрической фигурой.
8. Этим оператором заканчивается любая программа.
Какая последовательность чисел у вас появилась во второй строке? Под этой последовательностью зашифровано одно слово. Попробуйте найти ключ и расшифровать это слово. Дайте определение.
Алгоритм – конечный набор точных и понятных предписаний (правил, инструкций, действий), позволяющих решить любую конкретную задачу из некоторого класса однотипных задач.
III Изучение новой темы.
Вспомним, как называется алгоритм, в результате которого обеспечивается выбор одного из двух возможных действий? Правильно, разветвляющимся. Такой алгоритм обязательно содержит условие и, в зависимости от результата выполнения условия, происходит выбор действия. Например: Если день рабочий, то идем в школу, иначе будем отдыхать. Если родители деньги дадут, то идем на дискотеку, иначе будем смотреть телевизор. Таких примеров мы можем привести много из обычной жизни и наук. К примеру, математика: Если у равностороннего четырехугольника углы прямые, то назовем его квадратом, иначе назовем его ромбом. Физика: Если удар упругий, то масса тела сохраняется, иначе масса изменяется
Давайте теперь определим, что же такое ветвление?
Ветвление – эта такая форма организации действий, при которой в зависимости от выполнения или невыполнения некоторого условия совершается либо одна, либо другая последовательность действий.
Рассмотрим команду ветвления в полной и неполной форме, содержащее одно и несколько действий на алгоритмическом языке, представленную в виде блок-схемы и на языке программирования Бейсик. Оформим в виде таблицы.
Урок 29
§38. Разветвляющиеся алгоритмы
Содержание урока
Неполная форма ветвления
Неполная форма ветвления
Запишите в тетради решения задач, показанных на рис. 6.36 (Роботу нужно прийти в клетку Б).
Сравните случаи а и б на рис. 6.36. Как Робот может отличить один случай от другого с помощью логических команд (команд-запросов)? Предложите несколько вариантов.
Исполнителю в любом случае нужно сделать шаг вниз, чтобы прийти в клетку Б. Но если слева нет стены, он должен ещё подготовиться — сделать шаг влево. А если слева уже есть стена, ничего дополнительно делать не нужно, поэтому ветвь «нет» на блок-схеме пустая! Такое ветвление называется неполным, а вариант, который мы использовали в начале параграфа, — полной формой ветвления.
Неполная форма ветвления отличается тем, что одна из веток на блок-схеме пустая.
Блок-схемы ветвлений в полной и неполной формах показаны на рис. 6.37.
Один из вариантов решения задачи, показанной на рис. 6.36, на алгоритмическом языке запишется так:
алг Выйти
если слева свободно то
Обратите внимание, что в записи программы на Алгоритмическом языке нет слова иначе. Для ветвления в неполной форме второй блок команд (начинающийся словом иначе) не нужен, ведь он пустой.
Следующая страница Вложенные ветвления
Cкачать материалы урока
- Что значит полногласные слова
- Что значит полное возмещение затрат в институте