Уважаемые студенты, продолжаем участвовать в дистанционном режиме.
Результаты высылайте на уже вам знакомую ранее эл. почту dnkc@inbox.ru Не забывйте обращаться за заданиями на персональный сайт
преподавателя: набираете в строке запроса:
Захлебина
Людмила Евгеньевна, находите персональный сайт (см. скриншоты)
1 шаг
2шаг
Также можно использовать ссылку:
https://infourok.ru/user/zahlebina-lyudmila-evgenevna
У меня к вам просьба. Пожалуйста, еще раз вышлите результаты ваших
ответов на почту dnkc@inbox.ru за 31.03. и 01.04 числа.
Лекция №14
Отмеченное синим цветом, запишите в конспект.
Тема занятия:
Циклические конструкции: оператор цикла с параметром for.
Вложенные операторы
цикла.
Цель занятия: формировать
теоретические знания об операторах цикла в языке Си.
План
1.
Оператор цикла for.
2.
Вложенные операторы цикла.
3.
Рекомендации
по выбору цикла
Литература
1.
Семакин
И.Г. Основы алгоритмизации и программирования: учебник для сред. проф.
образования/ И.Г. Семакин, А.П. Шестаков. – М.: Издательский центр «Академия»,
2010– 400 с.
2.
Крис
Паппас Программирование на Си и С++/ Крис Паппас, Уильям Мюррей. – К.: Издательская
группа ВНV, 2000. – 320 с.
Содержание лекции:
4. Оператор цикла for.
Циклом называется блок
кода, который для решения задачи требуется повторить несколько раз.
Каждый цикл состоит из
- блока проверки условия повторения цикла
- тела цикла
Цикл выполняется до тех
пор, пока блок проверки условия возвращает истинное значение.
Тело цикла содержит
последовательность операций, которая выполняется в случае истинного условия
повторения цикла. После выполнения последней операции тела цикла снова
выполняется операция проверки условия повторения цикла. Если это условие не
выполняется, то будет выполнена операция, стоящая непосредственно после цикла в
коде программы.
В языке Си следующие
виды циклов:
- while — цикл с предусловием;
- do…while — цикл с постусловием;
- for — параметрический цикл (цикл с заданным числом повторений).
Цикл с
параметром (цикл со счетчиком, цикл –
для) служит для организации циклов с заранее известным числом повторений.
Синтаксис оператора:
for (<параметр> = <начальное
значение>; <условие повторения
цикла>; <выражения,
изменяющие значение параметра>)
{
<тело цикла>;
}
Здесь for –
зарезервированное слово Cи;
<параметр>
– переменная;
<начальное
значение> – выражение того же типа что и <параметр>, определяющее
начальное значение параметра;
<условие повторения
цикла> – выражение того же типа, определяющее конечное значение параметра;
<выражения, изменяющие
значение параметра> – некоторое значение типа <параметр>, задающее, на
сколько изменяется значение параметра при каждом проходе цикла;
<тело
цикла> – операторы Cи.
Этот оператор
организует повторение группы инструкций, образующих <тело цикла>, пока
<параметр> изменяется от <начального значения> до выполнения
<условия повторения цикла> с шагом <выражения, изменяющие значение
параметра>. Цикл выполняется столько раз, сколько нужно, чтобы
<параметр> от <начального значения> достиг выполнения
<условия повторения цикла>.
При выполнении оператора вначале вычисляется значение выражения
<начальное значение> и осуществляется присваивание <параметр>
= <начальное значение>. После этого циклически повторяется:
•
проверка <условия повторения цикла>;
•
выполнение <тела цикла>;
•
изменение значения переменной <параметр> на величину
<выражения, изменяющие значение параметра>. Пример:
int main()
{ int i,b;
for (i=1; i<10; i++)
b="i*i;" return 0; }
В этом примере
вычисляются квадраты чисел от 1 до 9.
Другим
вариантом использования оператора for является бесконечный цикл. Для
организации такого цикла можно использовать пустое условное выражение, а для
выхода из цикла обычно используют дополнительное условие и оператор break .
Пример:
for (;;)
{
...
... break;
...
}
Так как согласно синтаксису языка Си оператор может
быть пустым, тело оператора for также может быть пустым. Такая форма оператора
может быть использована для организации поиска. Пример:
for (i=0; t[i]<10 ; i++) ;
В данном примере переменная цикла i принимает значение
номера первого элемента массива t , значение которого больше 10.
5. Вложенные операторы цикла
В Си допускаются
вложенные циклы, то есть когда один цикл находится внутри другого:
for (i = 0; i<n;
i++) // внешний цикл - Цикл1
{
for (j = 0; j<n;
j++) // вложенный цикл - Цикл2
{
; // блок
операций Цикла2
}
// блок операций
Цикла1;
}
Пример: Вывести числа от 0 до 99, по
10 в каждой строке
#include <stdio.h>
int main() { for(int i=0; i<10; i++) // цикл для десятков
{
for (int j = 0; j < 10; j++)
// цикл для единиц
{
printf("%2d ", i * 10
+ j); // выводим вычисленное число (2 знакоместа) и пробел
}
printf("\n"); // во
внешнем цикле переводим строку
} return 0;
}
Результат выполнения
3.Рекомендации по выбору цикла
При выборе цикла необходимо оценить необходимость
проверки условия при входе в цикл или по завершении прохождения цикла.
Цикл с постусловием удобно применять в случаях, когда
для проверки условия требуется вычислить значение выражения, которое затем
будет размещено в теле цикла (см. выше пример ввода числа от 0 до 10).
Цикл c предусловием используется в случае, если все
переменные, участвующие в выражении, проверяющем условие, проинициализированы
заранее, но точное число повторений цикла неизвестно или предполагается сложная
модификация переменных, участвующих в формировании условия повторения цикла.
Если цикл ориентирован на работу с параметром, для
которого заранее известно число повторений и шаг изменения, то более
предпочтительным является параметрический цикл. Очень удобно использовать
параметрический цикл при работе с массивами для перебора элементов.
Домашнее задание
Напишите программу, используя
оператор цикла с параметром, для выполнения в цикле выражения y=2x+i
10
раз,
где
i – переменная цикла (или параметр цикла). Предусмотреть ввод переменной х с клавиатуры.
Оставьте свой комментарий
Авторизуйтесь, чтобы задавать вопросы.