503.50K
Категория: ПрограммированиеПрограммирование

Циклы. Лекция №4

1.

Лекция № 4
Циклы

2.

Оператор for
for(начальное значение;
условие;
приращение)
{
операторы;
}
вычисление начального значения
проверка условия
если ИСТИНА, выполнить операторы,
вычислить приращение и переход к
если ЛОЖЬ, то выход из цикла.

3.

Пример. Вывести числа от 1 до 5
k=1
k=2
k=3
k=4
k=5
k=6
k<=5
k<=5
k<=5
k<=5
k<=5
k<=5
ИСТИНА
ИСТИНА
ИСТИНА
ИСТИНА
ИСТИНА
ЛОЖЬ
вывод 1 k++
вывод 2 k++
вывод 3 k++
вывод 4 k++
вывод 5 k++
выход из цикла

4.

Пример. Вывести числа 20,40,60…
k=20
k=40
k=60
k=80
k=100
k=120
k<=100 ИСТИНА вывод 20 k+=20
k<=100 ИСТИНА вывод 40 k+=20
k<=100 ИСТИНА вывод 60 k+=20
k<=100 ИСТИНА вывод 80 k+=20
k<=100 ИСТИНА вывод 100 k+=20
k<=100 ЛОЖЬ
выход из цикла

5.

Пример. Вывести числа -5,-6…-10
k=-5 k>=-10 ИСТИНА вывод -5 k-k=-6 k>=-10 ИСТИНА вывод -6 k-k=-7 k>=-10 ИСТИНА вывод -7 k-k=-8 k>=-10 ИСТИНА вывод -8 k-k=-9 k>=-10 ИСТИНА вывод -9 k-k=-10 k>=-10 ИСТИНА вывод -10 k-k=-11 k>=-10 ЛОЖЬ
выход из цикла

6.

Пример. Вывести числа 2^n
k=2 k<=1024 ИСТИНА вывод 2 k*=2
k=4 k<=1024 ИСТИНА вывод 4 k*=2
k=8 k<=1024 ИСТИНА вывод 8 k*=2
...
k=512 k<=1024 ИСТИНА вывод 512 k*=2
k=1024 k<=1024 ИСТИНА вывод 1024 k*=2
k=2048 k<=1024 ЛОЖЬ
выход из цикла

7.

Какой цикл выводит 3,6,9 … 27

8.

Пример. Вывод кодов символов,
пока не нажата «ESC»
ch=‘+’ ch!=27 ИСТИНА вывод ‘+’
ch=‘7’ ch!=27 ИСТИНА вывод ‘7’
ch=‘Q’ ch!=27 ИСТИНА вывод ‘Q’
ch=‘ESC’
ch!=27 ЛОЖЬ
чтение клавиши
чтение клавиши
чтение клавиши
выход из цикла

9.

Пример. Две переменные в цикле

10.

Пример. Использование ++, -for (k=0; k<=10; k++) // 0..10
for (k=0; ++k<=10;)
// 1..10
for (k=0; k++<=10;)
// 1..11
Какой диапазон чисел будет выведен на экран ?

11.

Случайные числа
// инициализация генератора
srand(time(NULL));
rand();
// 0..RAND_MAX = 32767
rand()%10;
// 0..9
rand()%11-5;
// -5..5
rand()%8+3;
// 3..10
(rand()%10+1)*10; // 10,20..100
(float) rand()/RAND_MAX; //0.0..1.0

12.

Счётчики и сумматоры
Счётчик – целочисленная переменная
изменяющаяся на единицу при выполнении
условия.
k=k+1;
s++;
--m;
Сумматор – целочисленная или вещественная
переменная изменяющаяся на определенное
значение при выполнении условия.
s=s+0.5;
c+=7;
p=p-10;

13.

Пример. Подсчитать количество
чётных случайных чисел

14.

Цикл while – цикл с предусловием
while (логическое условие)
{
операторы;
}
операторы
истина
условие
ложь
“пока условие истинно, выполнять операторы”

15.

Пример. Проверка пароля.

16.

Пример. Текстовое меню.

17.

Цикл do while – цикл с постусловием
do
{
операторы;
} while (логическое условие);
операторы
истина
Цикл
выполнится
хотя бы раз !
условие
ложь
“Выполнять операторы, пока условие истинно”

18.

Пример. Отгадывание числа.

19.

Бесконечные циклы
for(;;)
{
операторы; // бесконечное
// выполнение
}
while(2<3)
{
операторы; // бесконечное
// выполнение
}

20.

Зацикливания

21.

Оператор break
Прерывает текущий цикл

22.

Оператор continue
Прерывает текущую итерацию цикла
Печать чётных чисел.

23.

Оператор goto
Быстрый выход из вложенных циклов
for (.....)
{
while (.....)
{
for (.....)
{
if (.....) goto exit;
}
}
}
exit: printf(”EXIT!”); // метка exit
English     Русский Правила