Оператор;. Операторы, находящиеся между фигурными скобками, называются телом цикла.

}

Операторы, находящиеся между фигурными скобками, называются телом цикла.

Внимание!Условие всегда заключается в скобки и после него точка с запятой не ставится!

Если поставить точку с запятой после условия, то этот цикл, как правило, превращается в бесконечный, потому что в этом случае условие изменяться не будет.

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

Действия оператора while:

1. проверяется выполнение условия,

2. если оно истинно, то выполняется оператор (цепочка), стоящий после него,

3. после его выполнения снова проверяется условие, и если оно снова истинно, то цикл повторяется,

4. если условие становится ложным, то цикл заканчивает работу.

Примеры:

1. вычислить сумму ста первых натуральных чисел:

s = 1 + 2 + 3 + … + 98 + 99 + 100

Пусть s – искомая сумма,

i – очередное число (изменяется от 1 до 100).

Тогда алгоритм решения задачи можно описать следующим образом:

a. обнуляем сумму s = 0,

b. берем первое число: i = 1,

c. добавляем в сумму это число: s = s + i,

d. увеличиваем очередное число на единицу: i = i+ 1,

e. если оно не больше 100, то снова добавляем его в сумму и повторяем цикл.

Представим этот алгоритм так:

s = 0;

i = 1;

ПОКА (i ≤ 100)

НАЧАЛО

s = s + i;

i = i + 1;

КОНЕЦ;

Программа:

$i = 1;

$s = 0;

while ($i <= 100)

{

$s += $i;

$i++;

}

echo “<BR>s = $s i = $i<BR>”;

Результат решения задачи:

s = 5050 i = 101

Таким образом, выходим из этого цикла со значением i не 100, а 101.

Вместо цепочки:

$s += $i;

$i++;

можно использовать один оператор:

$s += $i++;

Этот цикл можно превратить в бесконечный, если после условия поставить точку с запятой:

 


$i = 1;

$s = 0;

while ($i <= 100);

{

$s += $i;

$i++;

}

echo “<BR>s = $s i = $i<BR>”;

Значение переменной $i в этом случае меняться не будет – она останется равной единице.

2. вычислить сумму s всех цифр заданного натурального числа n

Пусть s – искомая сумма,

i – очередная цифра числа.

Тогда алгоритм решения задачи можно описать следующим образом:

1. обнуляем сумму s=0,

2. берем последнюю цифру числа, для чего определяем остаток от деления исходного числа на 10: i = n % 10,

3. добавляем в сумму найденную цифру: s = s + i,

4. уменьшаем число в 10 раз: n = n / 10,

5. повторяем цикл до тех пор, пока n > 0 – это и будет условием продолжения цикла.

 

Программа:

$s = 0;

$n = 12345;

while ($n > 0)

{

$i = $n % 10;

$s += $i;

$n /= 10;

}

echo “<BR>s = $s”;

 

3. ввести с клавиатуры по одному последовательность целых чисел (конец последовательности – число 0). Определить их сумму, максимальное и минимальное число, количество введенных чисел и их среднее арифметическое.

Пусть s – искомая сумма,

min, max – минимальное и максимальное из введенных чисел,

count – количество введенных чисел,

sred – среднее арифметическое,

n – очередное число.

Тогда алгоритм решения задачи можно описать следующим образом:

1. обнуляем сумму s = 0,

2. вводим первое число n,

3. если оно не равно нулю, то

4. принимаем его значение за min и max

5. количество введенных чисел count = 1

6. увеличиваем сумму на введенное число s = s + n

7. входим в цикл ввода:

8. вводим очередное число n,

9. если оно не равно нулю, то

10. количество введенных чисел увеличиваем на 1: count = count+1

11. увеличиваем сумму на введенное число s = s + n

12. если оно меньше min, то min = n,

13. если оно больше max, то max = n,

14. повторяем цикл до тех пор, пока n # 0 – это и будет условием продолжения цикла.

Создадим интерфейс этой задачи – взаимодействие программы с пользователем, то есть что должно выводиться на экран:

Первое число: 3

Очередное число: 8

Очередное число: 1

Очередное число: -2

Очередное число: 0

Сумма = 10

Количество чисел = 4

min = -2

max = 8

Среднее арифметическое = 2.50

Схема алгоритма:

 

Программа:

$count = 0;

$s = 0.0;

echo “<BR>Введите первое число:”;

// ввод $n

if ($n==0)








Дата добавления: 2015-08-26; просмотров: 583;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.018 сек.