68931

Цикли План. Цикли з передумовою. Цикли з постумовою

Лекция

Информатика, кибернетика и программирование

Цикл дозволяє повторити певну і навіть не визначене коли робота циклу залежить від умови кількість разів якінебудь оператори. Дані оператори називаються тілом циклу они крутитимуться в циклі. Прохід циклу називається ітерацією. Як і С PHP підтримує три види циклів: Цикл з передумовою while...

Украинкский

2014-09-27

58 KB

2 чел.

Лекція № 7

Тема:  Цикли

План

  1.  Цикли з передумовою
  2.  Цикли з постумовою
  3.  Цикл з лічильником
  4.  Оператори break і continue
  5.  Цикл перебору масивів

ЦИКЛИ

На другому місці по частоті використання, після умовного оператора, знаходяться цикли. Цикл дозволяє повторити певну (і навіть не визначене — коли робота циклу залежить від умови) кількість разів які-небудь оператори. Дані оператори називаються тілом циклу -они «крутитимуться» в циклі. Прохід циклу називається ітерацією.

Як і С, PHP   підтримує три види циклів:

  •  Цикл з передумовою (while)
  •  Цикл з післяумовою (do-while)
  •  Цикл з лічильником (for)

Цикл з передумовою While

Принцип роботи циклу з передумовою:

  •  Обчислюється значення логічного виразу.
  •  Якщо значення істинне, виконується тіло циклу, інакше — перехід до наступного за циклом оператора.

Синтаксис циклу з передумовою виглядає таким чином:

while   (логічний   вираз) інструкція;

В даному випадку тілом циклу є «інструкція». Звичайне тіло циклу складається з більшого числа операторів. Простий приклад циклу:

<?

$i=0; while($i++   <   10)   echo   $i;

?>

Дана програма виведе рядок 12345678910. Звернете увагу на послідовність виконання операцій умови $i++ < 10. Спочатку перевіряється умова, а тільки потім збільшується значення змінної. Якщо ж ми поставимо операцію інкремента перед змінній (++Si<10), то спочатку буде виконано збільшення змінної, а тільки потім — порівняння. В результаті ми отримали б рядок 123456789.

Цей же цикл можна було б записати по-іншому:

Si  =  0; while ($i<10)

{

$i ++;// збільшення лічильника

echo $i;

}

Якщо ми збільшимо лічильник після виконання оператора echo, ми отримаємо рядок 0123456789. Але у будь-якому випадку, у нас буде 10 ітерацій. Ітерація — це прохід циклу, тобто виконання інструкцій тіла циклу.

Цикл з постумовою do while

Цикл з умовою поста відрізняється від циклу з передумовою тим, що спочатку виконується тіло циклу, а тільки потім вже перевіряється умова. Таким чином, тіло циклу хоч би один раз, але буде обов'язково виконано.

Синтаксис циклу do while такий:

do

{//   тіло   циклу

} while    (умова);

Спробуємо за допомогою циклу з умовою поста отримати рядок 12345678910. Оскільки в цьому циклі спочатку виконується тіло, а потім перевіряється умова, то нам потрібно встановити початкове значення лічильника в одиницю:

<? $i   =   1; do   echo   $i;   while    ($i++   <10); ?>

Нагадаю, що ми можемо збільшувати значення лічильника в тілі циклу (так навіть зрозуміліше).

Цикл з лічильником For

Цикл з лічильником використовується для виконання тіла циклу певної кількості разів.

Наприклад, в циклі while зручно чекати певної події, наприклад, коли що повертається якоюсь функцією значення буде істинне (а така ситуація може і не відбутися). Цикл for зручно використовувати, наприклад, для заповнення масиву. Синтаксис циклу for:

for (команда_инициапизации; умова; команды_после_итерации) {   тіло циклу }

Оператор for починає свою роботу з виконання команд ініціалізації. Дані команди виконуються всього лише один раз. Після цього перевіряється умова: якщо воно істинне, виконується тіло циклу. Після того, як буде виконаний останній оператор тіла, виконуються команди «Після ітерації». Потім знову перевіряється умова, у випадку, якщо воно істинне, виконується тіло циклу і ітераційні для поста команди, і т.д.

Виведемо звичний нам рядок:

<? for    ($i=0;    $i<10;    $i++)    echo   $i; ?>

Даний сценарій виведе рядок 0123456789. Нам же потрібний рядок 12345678910, тому потрібно забезпечити збільшення лічильника при перевірці логічного виразу:

<? for    ($i=0;    $i++<10;)    echo   $i; ?>

В цьому випадку нам не потрібні команди, що виконуються після ітерації. Якщо вам потрібно вказати декілька команд, ви можете розділяти їх комами:

for    ($i=0,    $j=0;    $<10;   $i++,    $j++)    echo   $i;

Як ви вже встигли відмітити, цикл з лічильником є варіацією циклу з передумовою, оскільки спочатку в нім перевіряється умова, а тільки потім виконується тіло.

Альтернативний синтаксис

Цикли while і for мають альтернативний синтаксис. Для циклу while він такий:

while    (логическое_выражение):

тіло   циклу endwhile;

А для циклу for — такий:

for    (команды_инициализации;   умова;    команды_после_итерации) :

тіло   циклу endfor;

Зверніть увагу на двокрапку — його наявність обов'язкова! Альтернативний синтаксис також передбачений для оператора if-eIse:

if    (логическое_выражение):

команди; е1зе1^логическое_выражение2) :

команди; else:

команди; endif;

Використовувати даний синтаксис чи ні — ваша особиста справа. Що ж до мене, то я вважаю за краще використовувати «класику» — звичайний синтаксис.

Використовувати альтернативний синтаксис має сенс, якщо ви вважаєте за краще включати в РНР-сценарії HTML-код, а не виводити його за допомогою echo. B цьому випадку альтернативний синтаксис полегшує використання операторів if-else, while і for:

<?if    ($REMOTE_ADDR):?>

<hl>Welcome   home!</hl> <?else:?>

<hl>Hello</hl> <?endif;    ?>

Оператори break і continue

При використанні циклом можна використовувати операторів break і continue. Перший перериває роботу всього циклу, а другою — тільки поточній ітерації. Розглянемо наступні приклади:

<?

$i  =  0;

while    ($i++   <   10)

{

if    ($i==3)   break;

echo   "Ітерація   $i\n";

?>

В даному прикладі після другої ітерації робота циклу буде перервана і програма виведе рядки:

Ітерація   1 Ітерація   2

Якщо ж замість оператора break використовувати оператора continue, буде перервана робота тільки третьої ітерації і ми отримаємо висновок:

Ітерація 1

Ітерація 2

Ітерація 4

Ітерація 5

Ітерація 6

Ітерація 7

Ітерація 8

Ітерація 9

Ітерація 10

Припустимо, що у нас є вкладені цикли, наприклад

for   (...) {

for   (...)

{

for   (...)

Нам потрібно перервати роботу певного циклу, наприклад, першого. Тоді як оператор break знаходиться в тілі третього. В цьому випадку мож-

але передати функції break параметр — номер циклу, наприклад, break(l). Нумерація циклів починається з одиниці.

Цикл перебору масивів foreach

У четвертій версії PHP з'явився ще один вид циклу — foreach. Даний цикл призначений спеціально для перебору масивів.

Синтаксис даного Циклу такий:

foreach(MACCMB   as   $ключ=>$значение) оператори;

Оператори, що містяться в тілі циклу, будуть виконані для кожного елементу масиву. Змінна $ключ міститиме ім'я ключа елементу, а змінна $значение   — значення елементу.

Наступний приклад відобразить значення масиву SGLOBALS, що містить глобальні змінні (будуть виведені як імена змінних, так і їх значення):

<?

foreach($GLOBALS   as   $key=>$value) echo   "$key  =   $value\n";

?>

У PHP є один дуже корисний стандартний масив $GLOBALS. Ключем даного масиву є ім'я змінної, а значенням елементу масиву — значення змінної. Про цей важливий масив ми ще не раз поговоримо в цій книзі.


 

А также другие работы, которые могут Вас заинтересовать

45814. Корпоративные издания 25.33 KB
  Всю совокупность подобных СМИ можно разделить на две большие группы издания вертикального типа информация распространяется от руководства к сотрудникам и наоборот и издания горизонтального типа содержание которых нацелено в первую очередь на реальных и потенциальных клиентов компании. В какойто степени корпоративные СМИ в России опираются на установки и опыт времен СССР когда каждый крупный завод Министерство и пр. Причем если еще 5 лет назад наличие корпоративного массмедиа в основном оставалось прерогативой западных корпораций то...
45815. Управление общественным мнением 24.86 KB
  Управление общественным мнением Общественное мнение Общественность - это группа людей оказавшаяся в аналогичной неразрешимой ситуации: сознающих неопределенность и проблемность ситуации реагирующих определенным образом на создавшуюся ситуацию Мнение – это выраженное отношение по какомулибо вопросу. Общественное мнение – это совокупность многих индивидуальных мнений по конкретному вопросу затрагивающему группу людей. Общественное мнение может давать со веты рекомендации другим социальным институтам по выбору способов разрешения тех или...
45816. Имидж и репутация 24.18 KB
  Имидж объективный фактор играющий существенную роль в оценке любого социального явления или процесса. Понятие имидж происходит от латинского imgo связанного с латинским словом imitri означающего имитировать. Согласно толковому словарю Вебстера имидж это искусственная имитация или преподнесение внешней формы какоголибо объекта и особенно лица.
45817. Трудовое право и его источники. Трудовой договор 67.06 KB
  Общая характеристика трудового права Российской Федерации. Основания возникновения трудовых прав работников. Трудовой договор. Рабочее время и время отдыха. Понятие трудовой дисциплины и методы её обеспечения. Правовое регулирование внутреннего трудового распорядка.
45818. Пресс-службы: структура, функции, направления деятельности, формы работы 23.04 KB
  В частности в московский отдел входят: директор департамента PR заместитель директора департамента PR главный менеджер департамента PR начальник прессслужбы . Также примером такого устройства прессслужбы может служить прессслужба Государственной Думы или Прессслужба Президента см. Функции отдела: Координация деятельности Отслеживание бюджета Основные преимущества прессслужбы на аутсорсинге работающей удаленно не в штате компании: 1. Обратившись в агентство Вы избавляете себя от расходов на: поиск и содержание в штате...
45819. Взаимодействие PR-служб с органами государственной власти. Лоббирование 22.98 KB
  Помимо финансовой и законодательной поддержки тесное взаимодействие представителей бизнеса с органами власти их социальные инвестиции способствуют улучшению имиджа и укреплению репутации как организации так и ее руководителя. Отношения коммерческих организаций с органами власти строятся как на федеральном так и на региональном и местном уровнях причем местные...
45820. Критерии оценки эффективности PR деятельности 21.76 KB
  Однако многие компании уже имеют опыт работы и присутствия на рынке поэтому важно заранее сделать отметку и собрать все сведения о первоначальной ситуации на рынке для того чтобы в дальнейшем измерить и оценить возможные изменения на уровне осведомленности и понимания. Исследовательская группа проводит замеры до во время и после PRкампании чтобы выяснить какова динамика изменения узнаваемости торговой марки или компании у целевых аудиторий. Плюсы таких исследований в том что они дают достоверное представление об эффективности усилий...
45821. PR-кампания: постановка целей и задач, общая концепция компании, определение ключевых проблем и профилей целевых аудиторий 21.68 KB
  Кампании преимущественно планируются и проводятся ради того чтобы привлечь внимание общественности к проблеме разрешить или какимлибо образом исправить или же изменить общую социальную ситуацию. PRкампания – проводится с целью: убедить людей изменить свое отношение и мнение Формировать общественное мнение когда его нет усилить существующее общественное мнение По продолжительности PRкампании принято подразделять на стратегические несколько лет оперативные один год и ситуативные несколько месяцев. Наиболее типичными для...
45822. Планирование рекламной кампании 21.78 KB
  Планирование рекламной кампании разбивается на следующие этапы: Определение целей рекламной кампании; Разработка рекламной идеи и стратегии рекламной кампании; Исследование рынка; Разработка бюджета рекламной кампании; Выбор средств распространения рекламной информации; Выбор графика проведения рекламной кампании; Составление медиаплана рекламной кампании; Оценка эффективности рекламной кампании. Рекламные кампании различаются: По основному объекту рекламирования можно выделить кампании по рекламе: Товаров и услуг;...