2.2. Оператор repeat (цикл постусловия) Общий вид В отличие от for, оператор repeat (а также while) применяют тогда, когда неизвестно точно, сколько раз будет выполняться тело цикла. Общий вид оператора repeat оператор; оператор; - - - - - - - - оператор until булевское выражение; Работа оператора. Сначала выполняются операторы, составляющие тело цикла, затем выполняется булевское выражение, и если оно ложно, вновь выполняется тело цикла. Выход из цикла происходит, когда булевское выражение станет истинным. Явного перебора параметров в repeat не предусмотрено, поэтому изменение параметров осуществляется в теле цикла. Здесь же мы должны позаботиться , чтобы рано или поздно булевское выражение стало истиной. Замечания: 1.Тело оператора repeat выполняется по меньшей мере один раз. Оператор repeat еще называют циклом с послеусловием. 2. Перед until ';' не ставится. Пример: найти сумму четных чисел в интервале от 0 до 100. Program Prim17; Var i,s:integer; BEGIN repeat i:=i+2; s:=s+i until i>100; writeln('s=',s); readln; Пример: найти ток в цепи переменного тока в зависимости от частоты тока. Известно, что при последовательном соединении активной, емкостной и индукционной нагрузок сила тока может быть вычислена по формуле Пусть U = 220, R = 100, L = 0.57, С = 3.210-3, Fначальное=10; F будем менять с шагом 0.5. Печатать все результаты. Результаты, когда i3, нас не интересуют. Program Prim18; Var i,r,f,l,c,u:real; BEGIN writeln(' введите значения u r l c'); readln(u,r,l,c); f:=50; repeat i:=u/sqrt(sqr(r)+sqr(2*pi*f*l-1/(2*pi*f*c))); f:=f-1; writeln('f=',f,' i=',i) until i>3; readln;
|