Читайте также: |
|
ПРИМЕР3: Приведем вариант реализации последней задачи с использованием вложенных циклов REPEAT и WHILE.
Program ReWhV1;
Uses Crt;
Const XMIN=0; {Минимальное значение X}
XMAX=10; { Максимальное значение X }
AMIN=-2;
AMAX=4;
HX=2; {Шаг, может быть вещественным}
HA=2;
Var X,Y,A:Integer;
Begin
ClrScr;
A:=AMIN;
REPEAT
Writeln(‘A=’:6,A:2);
Writeln(‘X= ’,X:3, ‘Y= ’,Y:5);
X:=XMIN;
WHILE X<=XMAX DO
Begin
Y:=A*Sqr(X);
Writeln(‘X=’:4,X:3,’ A=‘, A,‘ Y=’:5,Y:4);
X:=X+HX;
End; {Для WHILE}
A:=A+HA;
Writeln;
UNTIL A>=AMAX;
Readln;
End. { ReWhV1 }
Блок-схема REPEAT и WHILE
Управляющая переменная в циклах
Управляющие переменные записываются в циклах для того, чтобы управлять окончанием работы программы или любых других действий. В качестве управляющей переменной можно использовать числа, символы или строки символов.
ПРИМЕР 1: Программа вычисления факториала с помощью управляющей переменной.
PROGRAM __ FAKTOR;
UP:STRIN6[3];
BEGIN
UP:=’YES’;
WHILE UP=’YES’ DO
BEGIN
WRIIELN; WRITELN('укажите N'); READLN(N);
F:=1;
FOR I:=1 TO N DO F:=F*I;
WRITELN ('для N= ', N,'факториал =', F:8:2);
WRITELN ('будете продолжать вычисления?');
WRITELN ('если ”да” - "YES", иначе - "NO" ');
READLN(UP);
END;
END.
В этой программе вычисления будут производиться до тех пор, пока значение управляющей переменной D равно 1, если ввести значение 0 для переменной D, то программа закончится.
ПРИМЕР 2: Пары неотрицательных вещественных чисел вводятся с клавиатуры. Посчитать произведение для каждой пары и сумму всех чисел.(использование цикла с усло вием)
Program c_repeat;
Var x, y, sum: real; otv: char;
Begin
Sum: =0;
Repeat
Write ('Введите числа x, y > 0 '); Readln (x, y);
Writeln ('Их произведение = ',x*y:8:3);
Sum: =sum+x+y;
Write ('Завершить программу (Д/Н)? ');
Readln (otv);
Until (otv='Д') or (otv='д');
Writeln ('Общая сумма = ',sum:8:3);
Readln
End.
Примеры программ
For. Приступая к решению задач, следует вспомнить, что:
Ø инструкция for используется для организации циклов с фиксированным, определяемым во время разработки программы, числом повторений;
Ø количество повторений цикла определяется начальным и конечным значениями переменной-счетчика;
Ø переменная-счетчик должна быть целого типа (integer), символьного или логического.
While. Приступая к решению задач этого раздела, следует вспомнить, что:
Ø число повторений инструкций цикла while определяется ходом выполнения программы;
Ø инструкции цикла while выполняются до тех пор, пока условие, записанное после слова while, истинно;
Ø после слова while надо записывать условие выполнения инструкций цикла;
Ø для завершения цикла while в теле цикла обязательно должны присутствовать инструкции, влияющие на условие выполнения инструкций цикла;
Ø цикл while — это цикл с предусловием, т. е. инструкции тела цикла вообще могут быть не выполнены;
Ø цикл while, как правило, используется для организации приближенных вычислений, задач поиска и обработки данных, вводимых с клавиатуры или из файла.
Repeat. Приступая к решению задач этого раздела, следует вспомнить, что:
Ø число повторений инструкций цикла repeat определяется ходом выполнения программы;
Ø инструкции цикла repeat выполняются до тех пор, пока условие, стоящее после слова until, ложно;
Ø после слова until надо записывать условие завершения цикла;
Ø для завершения цикла repeat в теле цикла обязательно должны быть инструкции, выполнение которых влияет на условие завершения цикла;
Ø цикл repeat — это цикл с постусловием, т. е. инструкции тела цикла будут выполнены хотя бы один раз;
Ø цикл repeat, как правило, используется для организации приближенных вычислений, задач поиска и обработки данных, вводимых с клавиатуры или из файла.
Ø
В качестве примера использования операторов цикла рассмотрим программу вычисления факториала.
Программа 2.1.1. Цикл с параметром (шаг +1)
PROGRAM FACTOR1;
VAR I, N:INTEGER; F: REAL;
BEGIN
WRITE (‘Введите N: ’); READLN (N); F:=1;
FOR I:=1 TO N DO F:=F*I;
WRITELN (‘Факториал от’,N ‘равен’,F);
END.
Дата добавления: 2015-07-08; просмотров: 169 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
FOR и FOR | | | Циклические алгоритмы. |