43
Действие S1 называют
телом цикла. ПОКА еще называют циклом с
предусловием. Обратим внимание на следующие важные моменты:
Цикл с предпроверкой может быть не выполнен ни разу — в случае,
если условие P изначально ложно.
При выполнении цикла программа может войти в бесконечное
исполнение в случае, если условие P изначально истинно, а выполнение
тела цикла не влияет на истинность условия. Эта ситуация называется
зацикливанием.
Пример на языке Си:
/* Умножение на
два и печать значения, пока не дойдем до тысячи */
while (a<1000)
{
a*=2;printf("
уже дошли до a=%d!\n",a);
}
Пример вычисления факториала с помощью итерации на языке Си:
/* Итеративное вычисление факториала */
long int fac(int N)
{
int i;
long F;
if (N==0) return 1;
if (N>18) {printf("
Слишком большое число!\n\a");return -1;};
i=F=1;
while (i<=N) F*=i++;
return F;
}
В языках программирования встречаются и другие виды циклических
конструкций. Пример — цикл с постусловием, или
цикл ДО. Графически он может быть изображен
таким, как на рис. 6.
Достарыңызбен бөлісу: