Оператор цикла с последующим условием

Цикл с последующим условием используется в тех случаях, когда заранее неизвестно число повторений цикла. Общий вид оператора:

Repeat

Оператор 1;

Оператор2;

Оператор N;

until условие;

Здесь repeat, until – зарезервированные слова; условие - выражение логического типа.

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

 
 

Пример. Составить программу нахождения суммы сходящегося ряда с точностью е. Расчет суммы закончить, когда слагаемое по модулю станет меньше заданной точности. В качестве значения е можно взять 0.1, или 0.01, или 0.001.

 

В данном примере необходимо составить рекуррентную формулу, позволяющую каждое следующее слагаемое вычислять через предыдущее. N! – это выражение равно 1·2·3·…·n. Рекуррентная формула представлена ниже.

 
 

Var

s, x, y, e: real;

n: integer;

Begin

WriteLn(‘введите х, е');

ReadLn(x, e);

s := x; (*первоначальная сумма*)

n: = 0;

y := x; (*первое слагаемое*)

Repeat

n := n + 1;

y := y *x * x / (2 * n * (2 * n + 1));

s := s + y;

until abs(y) <= e;

WriteLn(‘сумма= ’,s:12:5,’ при n= ‘,n ,’ y=’,y:12:5);

End.

Вложенные циклы.Циклы могут быть вложены один в другой. При использовании вложенных циклов необходимо соблюдать следующие правила:

– счетчики вложенных циклов должны быть разными;

– вложенный цикл должен полностью находиться внутри внешнего цикла;

– счетчик внутреннего цикла меняется быстрее счетчика внешнего цикла.

Ввод – вывод числовых матриц.Ввод элементов матриц можно осуществлять по одному элементу, по элементам строк, всех элементов. Пусть даны три матрицы А, В, С.

Var

a: array [1..2, 1..3] of real;

c, b: array [1..3, 1..2] of integer;

i, j: integer;

Begin

(*Ввод элементов матрицы по одному элементу*)

WriteLn (‘Ввод матрицы В по одному элементу’);

for i := 1 to 3 do

for j := 1 to 2 do

Begin

Write(‘введите элемент матрицы b[’, i, ‘,’,j,’]’);

ReadLn (b[i, j]);

End;

 

При выполнении данной группы операторов на экран будет выведено:








Дата добавления: 2017-01-29; просмотров: 1355;


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

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

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

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