 
        
        Оператор цикла с постусловием Repeat . . Until Оператор цикла с постусловием repeat . . Until
Цикл с оператором repeat используется в том случае, если последовательность действий надо выполнить несколько раз, причем количество повторений может быть определено только во время работы программы.
Относится к итеративным циклам.
В этом виде цикла условие стоит после тела цикла, поэтому этот цикл называют с постусловием.
Алгоритмическая структура «До» реализуется оператором
r epeat…
until
epeat…
until
repeat . . .
<группа операторов> // тело цикла
. . .
until <выражение>;
repeat - повторять,
until - пока не станет.
Результат выражения должен быть логического типа, определяющее условие завершения цикла.
Пока <выражение> = false (ложно), инструкции цикла повторяются.
Если <выражение> = true (истинно), осуществляется выход из цикла.
Тело цикла выполняется хотя бы один раз.
repeat и until образуют операторные скобки. Поэтому тело цикла может содержать несколько операторов.
Например:
repeat
//инструкции, которые надо выполнить несколько раз;
until <условие ложно>;
Оператор repeat выполняется следующим образом:
- 
Сначала выполняются находящиеся между repeat и until инструкции тела цикла. 
- 
Затем вычисляется значение выражения условия. 
- 
Если значение выражения условия ложно (false), то инструкции тела цикла выполняются еще раз. 
- 
Если значение выражения условия истинно (true), то выполнение цикла прекращается и выполняется следующий оператор, предусмотренный ходом выполнения программы. 
Цикл repeat, как правило, используется для организации приближенных вычислений с заданной точностью, задач поиска и обработки данных в массиве или в файле.
З адача6.
Вычислить наибольшее положительное
целое число n,
удовлетворяющее условию: 3n5
- 690n
7.
адача6.
Вычислить наибольшее положительное
целое число n,
удовлетворяющее условию: 3n5
- 690n
7.
	 
	program
	Example6; … uses 
	     SysUtils 
	 
	var n: byte;
	//вводимое число 
	begin 
	    n:=1; 
	    repeat n :
	= n + 1; 
	    until
	3*exp(5*ln(n)) 
	690*n > 7; 
	    writeln('n= ', n -
	1); 
	    readln 
	end. 
	
Задача7. Написать программу, вычисляющую сумму и среднее арифметическое последовательности положительных чисел, которые вводятся с клавиатуры.
 
	program
	Example7; … uses     
	SysUtils; 
	 var 
	   a:integer; 
	// вводимое с клавиатуры число 
	   n:integer; 
	// количество чисел 
	   s:integer; 
	// сумма чисел 
	   m:real;     
	// среднее арифметическое begin 
	      s:=0; n:=0;
	 // начальные значения 
	      writeln('Vvodite posle > chisla. ', 
	                  'Dly zaversheniy cikla vvedite
	0 .'); 
	      repeat 
	          write(' > '); 
	          readln(a);          // ввод
	чисел  
	 
	          s:=s+a;
	            // накопление суммы 
	          n:=n+1;
	            // подсчет чисел 
	      until
	a<=0;    
	  n:=n-1; 
	      writeln('vvedeno chisel: ',n); //
	количество 
	      writeln('summa chisel: ',s);   // сумма 
	      m:=s/n;  
	 
	      writeln('srednee: ',m:6:2);    // среднее 
	      readln                      
	арифметическое 
	end. 
	
 
Регулярные циклы с шагом не равным 1
Решение подобных задач можно организовать на основе структуры ветвление или с помощью итеративных циклов.
Задача8.
Вычислить на ЭВМ значения функций

при а=1.3, b=1.29, t = [ 0.1… 2.2], t изменяется в диапазоне от 0.1 до 2.2 с шагом h=0.3.
О рганизовать
вывод значений аргумента и вычисленного
значения функции в виде таблицы с
заголовком.
рганизовать
вывод значений аргумента и вычисленного
значения функции в виде таблицы с
заголовком.
