Практическая работа №3

Тема: Принятие решений на основе условий. операторы: if, else, elseif, switch

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

Для принятия решений применяется оператор if. Чтобы его использовать, ему необходимо передать условие. Если условие имеет значение true, будет выполняться следующий за ним блок кода. Условие в операторе if должно заключаться в круглые скобки( ).

if ($zakaz==0)

echo 'Вы ничего не заказали на предыдущей странице! <br/>' ;

Часто внутри такого условного оператора, как if, требуется выполнить более одного оператора. Перед каждым из них вовсе не обязательно помещать новый оператор if. Вместо этого последовательность операторов можно сгруппировать в блок. Для объявления блока операторы должны помещаться в фигурные скобки:

if ($zakaz==0)

{

echo ‘<font color=green>’;

echo 'Вы ничего не заказали на предыдущей странице! <br/>';

echo’</font>’

}

Часто требуется принимать решение не только о выполнении того или иного действия, но и выбирать определенный набор возможных действий в противном случае. Оператор else позволяет определить альтернативное действие, которое должно выполняться, если значением условия в операторе if окажется false.

if ($zakaz==0)

{

echo 'Вы ничего не заказали на предыдущей странице! <br/>' ;

НЕ нашли? Не то? Что вы ищете?

}

else

{

echo ‘Общая сумма заказа:’. $zakaz. ‘</br>’;

}

Для многих принимаемых решений может существовать более двух возможностей. Последовательность множества вариантов действий создается с использованием оператора elseif, который представляет собой комбинацию операторов else и if.

if ($kol<10)

$discount=0;

elseif ($kol>=10 && $kol<=19)

$discount=10;

elseif ($kol>=20 && $kol<=29)

$discount=15;

elseif ($kol>=30)

$discount=20;

Оператор switch работает аналогично оператору if, но позволяет условному выражению иметь в качестве результата более двух значений. В операторе if условие принимает значение true или false. В операторе switch условие может принимать любое количество различных значений до тех пор, пока оно имеет простой тип (integer, string или double). Для обработки каждого из значений, на которые требуется реагировать, необходимо записать оператор case, а также (необязательно) можно определить случай для обработки по умолчанию любых значений, для которых специально не задан оператор case.

 

switch ($find)

{

case 'a':

echo '<p>Вы заказали День рождения.</p>';

break;

case 'b':

echo '<p>Вы заказали банкет.</p>';

echo '</font>';

break;

case 'с':

echo '<p>Вы заказали фуршет. .</p>';

break;

}

Таблица 1 Операции сравнения PHP

Таблица 2 Логические операции PHP

Ход работы:

1.  Откройте для редактирования файл processorder. php из практической работы №2.

2.  Измените формат даты обработки заказа на ('H:i, j. m. Y');

3.  После вывода даты обработки заказа, укажите, с помощью какого вида рекламы в фирму обратился клиент. Цвет выводимого текса синий. Варианты, сформировать на основании значения в поле со списком с помощью оператора switch (см. рис. 1-3):

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

4.  Расчет значения $totalamount измените с учетом скидки на автопокрышки ($discount), размер которой зависит от заказанного количества (используйте elseif):

    приобретение менее 10 автопокрышек – без скидки; приобретение от 10 до 49 автопокрышек – скидка 5%; приобретение от 50 до 99 автопокрышек – скидка 10%; приобретение более 100 автопокрышек – скидка 15%;

5.  В случае предоставления скидки на автопокрышки, выведите значение полученной скидки (см. рис 2,3). Цвет выводимого текста красный.

6.  Вывод всей информации о заказе реализуйте только в случае, если общее число заказанных товаров ($totalcount) не равно нулю. Иначе выведите сообщение: «Вы ничего не заказали на предыдущей странице!», и прервите работу php-сценария.

7.  Если в заказе отсутствует только один или два вида товара, то в сведения об их количестве не выводить (см. рис 2,3).

8.  Допишите комментарии к основным разделам программы.