Тема: Управление потоком в PHP Изучить возможности языка PHP при решении задач, требующих использования условного оператора. Рассмотреть примеры управления.

Презентация:



Advertisements
Похожие презентации
Переменные и операторы УРОК 2. Переменные ПЕРЕМЕННАЯ – ?... контейнер для хранения данных. Переменная имеет имя – это….? последовательность букв, цифр.
Advertisements

Операторы языка Си Лекция 5.
Министерство образования Республики Беларусь Белорусский государственный университет Управляющие структуры языков программирования.
Глава 6. УПРАВЛЯЮЩИЕ СТРУКТУРЫ Оператор присваивания Простой и составной операторы Условный оператор Оператор множественного выбора Оператор цикла с предусловием.
Виды алгоритмических структур: –блок-схема. –линейный алгоритм. –алгоритмическая структура «ветвление». –алгоритмическая структура «выбор». –алгоритмическая.
Лекция 7. Структура языка С/С++. Операторы ветвления: условный оператор if. Полное ветвление. Неполное ветвление. Оператор множественного выбора switch.
Циклические алгоритмы. Цикл - это такая алгоритмическая структура, в которой осуществляется многократное повторение одной ( или нескольких ) команд.
Цикл - это специальная конструкция языка, позволяющая запрограммировать многократное выполнение определённого блока команд Итерация - это каждый проход.
Что произойдет, если на каждой итерации цикла For… To уменьшать счетчик? а) программа «зациклится»; б) цикл выполнится меньшее количество раз; в) возникнет.
ЦИКЛИЧЕСКИЙ АЛГОРИТМ Цели: -Познакомиться с понятием циклического алгоритма. -Освоить языковые средства для реализации циклических алгоритмов.
АЛГОРИТМЫ ТОИ-ИМ 3 базовые управляющие алгоритмические структуры Решение Цикл Последовательность Непосредственное выполнение одно- го действия за другим.
Оператор WHILE Оператор while называют оператором цикла с предусловием (условие проверяется перед выполнением тела цикла), операторы тела цикла могут быть.
Введение в C++ Урок 3-4. ОПЕРАТОРЫ ЦИКЛА Операторы цикла используются для организации многократно повторяющихся вычислений. - цикл с предусловием while,
Лекция 3 Ветвления. Инструкции и выражения Выражение становится инструкцией, если в конце его поставить точку с запятой. Выражения: a = b + c, i++, printf(...),
Лекция 4 Инструкции. Инструкции С++ инструкция: объявление ; выражение opt ; { последовательность_инструкций opt } if ( условие ) инструкция if ( условие.
ОСНОВНЫЕ ЭЛЕМЕНТЫ БЛОК-СХЕМ Основные геометрические фигуры языка блок-схем, широко используемого для описания небольших алгоритмов.
ОСНОВНЫЕ ЭЛЕМЕНТЫ БЛОК-СХЕМ Основные геометрические фигуры языка блок-схем, широко используемого для описания небольших алгоритмов.
ОСНОВЫ АЛГОРИТМИЗАЦИИ И ОБЪЕКТНО-ОРИЕНТИРОВАННОГО ПРОГРАММИРОВАНИЯ СВОЙСТВА АЛГОРИТМА И ЕГО ИСПОЛНИТЕЛИ.
Базовые алгоритмические конструкции. Выделяют три базовые структуры алгоритмической конструкции: - Линейные алгоритмы (последовательное выполнение); Линейные.
Объектно-ориентированный язык программирования. Переменная - эта поименованная ячейка памяти, хранящая какое-либо одно значение (одно число, один фрагмент.
Транксрипт:

Тема: Управление потоком в PHP Изучить возможности языка PHP при решении задач, требующих использования условного оператора. Рассмотреть примеры управления потоком при использовании условных инструкций. Цель:

Сегодня на уроке: 1.Как при помощи инструкции IF заставить фрагмент программы выполнятся только при выполнении некоторого условия; 2.Как создать альтернативный блок в программе, который будет выполняться, при НЕвыполнении некоторого условия; 3.Как с помощью инструкции SWITCH выполнять разные блоки программы, в зависимости от значения некоторого выражения; 4.Как многократно выполнять фрагмент программы, с помощью инструкции While ; 5.Как создать цикл с помощью инструкции FOR ; 6.Как прервать выполнение цикла; 7.Как делать вложенные циклы.

1. Условные инструкции Выражение Действие 1 ДаНет If (выражение) { // этот фрагмент выполняется // если выражение истинно } Формат записи инструкции IF на языке PHP При выполнении инструкции IF вычисляется выражение в скобках. Если значение этого выражения равно TRUE, то блок программы выполняется. В противном случае блок программы полностью пропускается.

Что будет отображаться в окне броузера для каждого варианта программы?

If (выражение) { // этот фрагмент выполняется если выражение истинно } Else { // этот фрагмент выполняется в противном случае } В инструкции IF можно указать альтернативный блок, который будет выполняться в случае если заданное выражение ложно: Выражение Действие 1 ДаНет Действие 2 Формат записи инструкции IF и блока Else на языке PHP

Блок программы, который выполняется если выражение истинно Альтернативный блок, который выполняется, если выражение ложно

Использование блока Else c инструкцией If позволяет программе принимать то или другое решение, в зависимости от значения выражения. Однако, мы все еще ограничены бинарным выбором типа да – нет. В PHP существует возможность принимать более сложные решения в каскадной последовательности. IF – ELSEIF – ELSE Данная конструкция, позволяет проверить несколько условий, перед тем, как выполнить раздел программы.

If (выражение_1) { // этот фрагмент выполняется если выражение истинно } ElseIF (выражение_2) { // этот фрагмент выполняется в если выражение_1 ложно, // а выражение_2 истинно } Else { // этот фрагмент выполняется во всех остальных случаях } Нарисуйте в виде блок-схемы Выражение_1 Действие 1 ДаНет Выражение_2 Действие 2 ДаНет Действие 3

Что необходимо изменить в PHP-коде, чтобы выполнился 3-й блок программы? Что будет отображаться в окне броузера?

Инструкция SWITCH Инструкция Switch – это еще один способ изменить поток выполнения программы в зависимости от значения некоторого выражения. Формат записи: Switch (выражение) { Case значение_1: // выполняется, если выражение = значение_1 break; Case значение_2: // выполняется, если выражение = значение_2 break; Default: // выполняется, если выражение не приняло // ни одного из перечисленных значений }

КАК переписать PHP-код, чтобы вместо инструкции If, задействовать инструкцию SWITCH ?

! ! !! ! !! ! !! ! ! Ставить инструкцию BREAK в конце каждого блока CASE надо обязательно, в противном случае, программа будет продолжать сравнивать значение выражения, со всеми значениями в последующих блоках CASE и в конце концов доберется до DEFAULT. Почти всегда, результатом будет не то что нужно!!! Оператор ? Оператор ? – возвращает значение одного из двух выражений, разделенных знаком двоеточия. Какое из двух выражений сформирует возвращаемое значение - зависит от истинности тестового выражения. Формат записи оператора ? (Тестовое_выражение) ? Выражение_1:Выражение_2;

2. Использование ЦИКЛОВ Условие Тело цикла да нет Изобразите как выглядит Циклическая структура (цикл с ПРЕД условием) While (выражение) { // тело цикла } До тех пор, пока выражение в скобках истинно, тело цикла выполняется.

Что будет отображаться в окне броузера?

Цикл Do … while Do { // тело цикла } While (выражение); Цикл Do … While напоминает цикл While, но разница состоит в том, что в цикле Do … While сначала выполняется тело цикла, а уже потом проверяется истинность его условия. 1. Как на блок схеме можно изобразить структуру цикла Do…While? 2. С каким оператором цикла языка Паскаль можно сравнить этот цикл, что общего и в чем отличие?

Условие Тело цикла да нет ! ! !! ! !! ! !! ! !

1.Прокомментируйте, как будет выполняться данный фрагмент программы? 2.Что в результате отразиться в окне броузера?

1.Прокомментируйте, как будет выполняться данный фрагмент программы? 2.Что в результате отразиться в окне броузера? Назначение оператора?

Цикл FOR FOR ( инициализация, тестовое выражение, увеличение ) { // тело цикла } Цикл FOR не предоставляет ни каких новых возможностей, т.е. с его помощью невозможно сделать ничего такого, чего нельзя было бы сделать с помощью цикла Do…While. Однако цикл For смотрится изящнее и понятнее.

Пример использования оператора FOR! PHP - код Результат

Прерывание циклов инструкцией Break В циклах For и While присутствует условие, которое определяет продолжительность выполнения цикла. Для досрочного прерывания выполнения тела цикла предназначена инструкция BREAK. Как правило, для этого проверяется некоторое условие. Это обычно делается для обнаружения ошибочного состояния при выполнении операторов цикла.

Прокомментируйте что происходит при выполнении данного PHP = кода. Результат, который будет отображаться в окне броузера Что будет происходить в программе если начальное значение $counter будет отрицательным (например -10)?

? Деление числа на ноль не вызывает в программе на языке PHP фатальной ошибки, вместо этого в окне броузера генерируется сообщение об ошибке и программа выполняется далее: В цикле FOR можно опустить любое выражение стоящее в скобках, но точку с запятой ставить обязательно! ! ! !! ! !! ! !! ! !

Пропуск итераций с помощью инструкции continue Continue – служит для пропуска текущей итерации, но не прерывает выполнения цикла окончательно. Как изменить программу таким образом, чтобы выполнение программы не прерывалось при достижении переменной $counter значения нуля?

! ! !! ! !! ! !! ! ! Использование инструкций CONTINUE и BREAK затрудняют чтение и понимание программы => эти инструкции надо использовать с осторожностью, а лучше стараться избегать!!!

3. Вложенные ЦИКЛЫ Тело цикла может содержать в себе другой цикл! Такая конструкция особенно удобна при работе с таблицами: