Базовый синтаксис языка PHP – написать операторы для реализации цикла for.
Стр 1 из 2Следующая ⇒ Ответы для подготовки к 1 модулю по дисциплине «Технология распределенных систем и параллельных вычислений»
Технология распределенных Web-ориентированных систем,
Арифметические операции Пример Название Результат -$a Отрицание Смена знака $a. $a + $b Сложение Сумма $a и $b. $a - $b Вычитание Разность $a и $b. $a * $b Умножение Произведение $a и $b. $a / $b Деление Частное от деления $a на $b. $a % $b Деление по модулю Целочисленный остаток от деления $a на $b.
К простейшим арифметическим операторам можно отнести: Операторы сравнения Все как и в большинстве прочих языков (кто с ними знаком). Итак:
Отдельно и подробнее необходимо рассмотреть дополнительные операторы присваивания. Они позволяют сэкономить пару не лишних байт при записи скрипта:
2. Базовый синтаксис языка PHP – какие логические операторы используются в скриптах. Как написать условие, проверяющее, что переменная $x больше 10, но меньше или равна 20. Логические операторы Пример Название Результат $a and $b И TRUE если и $a, и $b TRUE. $a or $b Или TRUE если или $a, или $b TRUE.
$a xor $b Исключающее или TRUE если $a, или $b TRUE, но не оба.! $a Отрицание TRUE если $a не TRUE. $a && $b И TRUE если и $a, и $b TRUE. $a || $b Или TRUE если или $a, или $b TRUE. == - это равно === - это идентичность (совпадают и значения и т.п.) !(<>) или так или так – это не &&(and) – это и ||(or) – это или != - это не равно Операции and и or имеют меньший приоритет, чем && и ||. $x>10<=20; 3. Базовый синтаксис языка PHP – какие логические операторы используются в скриптах. Как написать условие, проверяющее, что переменная $f равна переменной $x. Аналогично $f==$x 4. Базовый синтаксис языка PHP – что означает следующая запись и какой ответ будет напечатан на странице:
Для того чтобы иметь возможность реализовать логику в программе используются условные операторы. Умозрительно эти операторы можно представить в виде узловых пунктов, достигая которых программа делает выбор по какому из возможных направлений двигаться дальше. Например, требуется определить, содержит ли некоторая переменная arg положительное или отрицательное число и вывести соответствующее сообщение на экран. Для этого можно воспользоваться оператором if (если), который и выполняет подобные проверки. В самом простом случае синтаксис данного оператора if следующий: if (выражение) Если значение параметра «выражение» равно «истинно», выполняется оператор, иначе он пропускается программой. Следует отметить, что «выражение» является условным выражением, в котором выполняется проверка некоторого условия. В табл. 2.1 представлены варианты простых логических выражений оператора if. Таблица 2.1. Простые логические выражения
Приведем пример использования оператора ветвления if. Следующая программа позволяет определять знак введенной переменной.
Листинг 2.1. Первая программа определения знака введенного числа. #include return 0; Анализ приведенного текста программы показывает, что два условных оператора можно заменить одним, используя конструкцию if (выражение) которая интерпретируется таким образом. Если «выражение» истинно, то выполняется «оператор1», иначе выполняется «оператор2». Перепишем ранее приведенный пример определение знака числа с использованием данной конструкции. Листинг 2.2. Вторая программа определения знака введенного числа. #include return 0; В представленных примерах после операторов if и else стоит всего одна функция printf(). В случаях, когда при выполнении какого-либо условия необходимо записать более одного оператора, необходимо использовать фигурные скобки, т.е. использовать конструкцию вида if (выражение) Следует отметить, что после ключевого слова else формально можно поставить еще один оператор условия if, в результате получим еще более гибкую конструкцию условных переходов: if(выражение1) <оператор1> На листинге 2.3 представлена программа, реализующая последнюю конструкцию условных переходов. Листинг 2.3. Третья программа определения знака введенного числа.
#include return 0; До сих пор рассматривались простые условия типа x<0. Вместе с тем оператор if позволяет реализовывать более сложные условные переходы. В языке С++ имеются три логические операции: && - логическое И На основе этих трех логических операций можно сформировать более сложные условия. Например, если имеются три переменные exp1, exp2 и exp3, то они могут составлять логические конструкции, представленные в табл. 2.2. Таблица 2.2. Пример составных логических выражений
Подобно операциям умножения и сложения в математике, логические операции И ИЛИ НЕТ, также имеют свои приоритеты. Самый высокий приоритет имеет операция НЕТ, т.е. такая операция выполняется в первую очередь. Более низкий приоритет у операции И, и наконец самый малый приоритет у операции ИЛИ. Данные приоритеты необходимо учитывать, при составлении сложных условий. Например, условие if(4 < 6 && 5 > 6 || 5 < 6) проверяется таким образом. Если 4 < 6 И 5 > 6 ИЛИ 5 < 6, то выполняется переход по условию. При необходимости изменения порядка проверки следует операции с более низким приоритетом поместить в круглые скобки, как показано ниже if(4 < 6 && (5 > 6 || 5 < 6)) Условная операция if облегчает написание программ, в которых необходимо производить выбор между небольшим числом возможных вариантов. Однако иногда в программе необходимо осуществить выбор одного варианта из множества возможных. Формально для этого можно воспользоваться конструкцией if else if … else. Однако во многих случаях оказывается более удобным применять оператор switch языка С++. Синтаксис данного оператора следующий:
switch(переменная) Данный оператор последовательно проверяет на равенство переменной константам, стоящим после ключевого слова case. Если ни одна из констант не равна значению переменно, то выполняются операторы, находящиеся после слова default. Оператор switch имеет следующую особенность. Допустим, значение переменной равно значению константы1 и выполняются операторы, стоящие после первого ключевого слова case. После этого выполнение программы продолжится проверкой переменной на равенство константы2, что часто приводит к неоправданным затратам ресурсов ЭВМ. Во избежание такой ситуации следует использовать оператор break для перехода программы к следующему оператору после switch. На листинге 2.4 представлен пример программирования условного оператора switch. Листинг 2.4. Пример использования оператора switch. #include Данный пример демонстрирует два разных варианта использования оператора switch. В первом случае выполняется анализ введенной цифры, во втором – анализ введенного символа. Следует отметить, что данный оператор может производить выбор только на основании равенства своего аргумента одному из перечисленных значений case, т.е. проверка выражений типа x<0 в данном случае невозможна. 6. Базовый синтаксис языка PHP – написать операторы для реализации циклов while и do… while. Оператор цикла while Довольно простой оператор цикла, синтаксис которого очень похож на синтаксис в других языка программирования: <?phpwhile (условие) //может быть сложное логическое условие { операторы;}?>В условие стоит некое выражение, которое должно быть либо истинным (true), либо ложным (false). В случае истинного значения условия выполняются операторы, которые стоят в фигурных скобках. В случае одного оператора фигурные скобки можно опустить.
Примечание: условие может состоять из очень многих выражений с использованием алгебры логики &&, ||,! и т.д. Стоит обратить внимание на то, что если в условие есть операторы, то они должны как-то изменяться, иначе цикл просто зациклиться. Приведу простой пример на использование while: <?php$i=0;while ($i<5) //пока i меньше 5 { echo "i =".$i."<br/>"; $i++;}?>Выше описанный пример выведет следующий результат: i=0 Обратите внимание, что $i=5 не будет выведено, т.к. i увеличивается в самом конце цикла и поэтому как только он достигнет 5, то условие входа в цикл просто не выполнится.
Оператор break Для немедленного прекращения цикла есть специальный оператор break;. Данный оператор часто используется для выхода из бесконечного цикла, когда условие всегда истинно. Например выше описанный пример можно было написать следующим образом: <?php$i=0;while (true) //условие всегда истинно { echo "i =".$i."<br/>"; $i++; if($i>=5) break;}?>Результат будет такой же, как и в предыдущем примере.
Оператор continue Оператор continue; прекращает текущую итерацию цикла, но не прекращает цикл полностью. Например: <?php$i=0;while (true) //условие всегда истинно { echo "i =".$i."<br/>"; $i++; if($i>=5) break; else continue;}?>Результат этого примера будет таким же, как и у предыдущих примеров. Как показывает практика, операторы continue; и break; зачастую помогают реализовать сложные циклы. Приведу ещё пример по использованию цикла while: <?php$i=0;while ($i++<5) //постпрефиксная форма { echo "i =".$i."<br/>";} //результаты этих двух while будут разными//из-за постпрефиксной и префиксной формы $i=0;while (++$i<5) //префиксная форма { echo "i =".$i."<br/>";}?>
Оператор цикла do...while Оператор do...while очень похож на обычный while. Единственное их отличие во времени проверки условия. Цикл do...while будет выполнен хотя бы один раз, поскольку проверка происходит в самом конце. Синтаксис do...while: <?phpdo{ операторы;} while (условие);?>Рассмотрим пример: <?php$i=0;do{ echo "i =".$i."<br/>"; $i++;} while($i<5);?>Его результат аналогичен первым рассмотренным примерам. Стоит отметить, что операторы continue; и break; также могут применяться в таких циклах. Базовый синтаксис языка PHP – написать операторы для реализации цикла for. Оператор цикла for Синтаксис оператора for следующий: <?phpfor(start; usloviya; shag){ операторы;}?>В start происходит начальная инициализация переменных. В usloviya должны стоять одно или несколько условий завершения цикла. В shag заносятся операторы, которые выполняются в конце каждой итерации. Например: <?phpfor ($i=0; $i<5; $i++){ echo "i =".$i."<br/>";}?>Результат выполнения этого цикла будет таким же как и у предыдущих примеров. Большим плюсом использования for, что тело цикла может отсутствовать, а все необходимые операции выполнены в разделе shag. Для наглядности приведем пример: <?phpfor ($i=0; $i<5; print "i =".$i."<br/>", $i++);?>Замечание: в shag недопустимо использование функции echo. Шаг цикла и условия могут быть самыми разнообразными. Например, можно написать не i++, а i+=5 (инкремент на 5). Каждый из разделов цикла for может быть опущен, в таком случае получается бесконечный цикл: <?phpfor (;;){ операторы;} for (;uslovie;){ операторы;} for (;;shag){ операторы;}?>for допускает использование continue; и break;. 8. Операции инкремента и декремента. Дана переменна $x=6; Что будет напечатано на странице после выполнения следующих операторов PHP поддерживает префиксные и постфиксные операторы инкремента и декремента в стиле C. Замечание: Операторы инкремента/декремента не влияют на булевы значения. Декремент NULL также не даст никакого эффекта, однако инкремент даст значение 1.
Приведем пример простого скрипта: <?php echo "<h3>Префиксный инкремент</h3>"; echo "<h3>Постфиксный декремент</h3>"; echo "<h3>Префиксный декремент</h3>"; PHP следует соглашениям Perl (в отличие от С) касательно выполнения арифметических операций с символьными переменными. Например, в PHP и Perl $a = 'Z'; $a++; присвоит $a значение 'AA', в то время как в C a = 'Z'; a++; присвоит a значение '[' (ASCII значение 'Z' равно 90, а ASCII значение '[' равно 91). Следует учесть, что к символьным переменным можно применять операцию инкремента, в то время как операцию декремента применять нельзя, кроме того, поддерживаются только ASCII символы (a-z и A-Z). Попытка инкремента/декремента других символьных переменных не будет иметь никакого эффекта, исходная строка останется неизменной.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|