Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Тема №4. Операторы цикла языка программирования Turbo Pascal 7.0




 

В языке Turbo Pascal 7.0 есть три оператора цикла Repeat, While и For, которые соответствуют трем способам организации цикла.

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

Структура оператора Repeat:

 

Repeat

«оператор 1»;

«оператор 2»;

……………………

«оператор n»;

until «логическое выражение»;

 

Действия, выполняемые оператором Repeat:

1) выполняются операторы с 1-го до n-го, образующие тело цикла;

2) проверяется логическое выражение, стоящее после слова until; если оно истинно, то осуществляется выход из цикла; если оно ложно, то осуществляется возврат на очередное выполнение тела цикла.

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

Программа с оператором цикла Repeat и файловыми вводом и выводом информации для задания, приведенного в предыдущем примере:

 

Program primer1_1;

Var a,b,tn,tk,dt,t,y:real;

f1,f2:text;

Begin

Assign (f1,’primer1.dat’);

Assign (f2,’primer1_1.res’);

Reset(f1);

Rewrite(f2);

Read(f1,a,b,tn,tk,dt);

t:=tn;

Repeat

If (t>=2)and(t<=2.6) then y:=a*t*t*sin(t)

else if t<2 then y:=exp(t*ln(a))+2*a

else y:=exp(b*t)*cos(t);

Writeln(f2,’t=’,t:4:2,’ y=’,y:7:3);

t:=t+dt;

until t>tk;

close(f1);

close(f2);

end.

 

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

Структура оператора While:

 

While «логическое выражение» do «оператор»;

 

Если оператор, образующий тело цикла, является составным, то структура оператора While выглядит следующим образом:

 

While «логическое выражение» do

begin

«оператор 1»;

«оператор 2»;

……………………

«оператор n»;

end;

 

Действия, выполняемые оператором While:

проверяется логическое выражение, стоящее после слова While; если оно истинно, то осуществляется выполнение тела цикла, после чего происходит возврат на проверку логического выражения; если оно ложно, то осуществляется выход из цикла.

Особенность оператора цикла While состоит в том, что тело цикла может ни разу не выполниться, если логическое выражение сразу окажется ложным.

Программа с оператором цикла While и файловыми вводом и выводом информации для задания, приведенного в предыдущем примере:

 

Program primer1_2;

Var a,b,tn,tk,dt,t,y:real;

f1,f2:text;

Begin

Assign (f1,’primer1.dat’);

Assign (f2,’primer1_2.res’);

Reset(f1);

Rewrite(f2);

Read(f1,a,b,tn,tk,dt);

t:=tn;

While t<=tk do

begin

If (t>=2)and(t<=2.6) then y:=a*t*t*sin(t)

else if t<2 then y:=exp(t*ln(a))+2*a

else y:=exp(b*t)*cos(t);

Writeln(f2,’t=’,t:4:2,’ y=’,y:7:3);

t:=t+dt;

end;

close(f1);

close(f2);

end.

 

 

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

Существует две формы оператора For со словами to и downto, структура этих операторов:

 

For «параметр цикла»:=«начальное значение» to «конечное значение» do «оператор»;

For «параметр цикла»:=«начальное значение» downto «конечное значение» do «оператор»;

Параметр цикла должен быть порядкового типа. Начальное и конечное значения параметра должны быть выражениями совместимого порядкового типа.

Действия, выполняемые оператором For со словом to:

1) параметру цикла присваивается начальное значение;

2) значение параметра цикла сравнивается с конечным значением; если оно меньше или равно конечному значению, то выполняется тело цикла, после чего параметру цикла присваивается последующее значение; если оно больше конечного значения, то осуществляется выход из цикла.

Действия, выполняемые оператором For со словом to:

1) параметру цикла присваивается начальное значение;

2) значение параметра цикла сравнивается с конечным значением; если оно больше или равно конечному значению, то выполняется тело цикла, после чего параметру цикла присваивается предыдущее значение; если оно меньше конечного значения, то осуществляется выход из цикла.

После того как оператор цикла For закончил свою работу параметр цикла не имеет определенного значения.

 

Программа с оператором цикла For и файловыми вводом и выводом информации для задания, приведенного в предыдущем примере:

 

Program primer1_3;

Var a,b,tn,tk,dt,t,y:real;

i,n:integer;

f1,f2:text;

Begin

Assign (f1,’primer1.dat’);

Assign (f2,’primer1_3.res’);

Reset(f1);

Rewrite(f2);

Read(f1,a,b,tn,tk,dt);

t:=tn;

n:=trunc((tk-tn)/dt)+1;

For i:=1 to n do

begin

If (t>=2)and(t<=2.6) then y:=a*t*t*sin(t)

else if t<2 then y:=exp(t*ln(a))+2*a

else y:=exp(b*t)*cos(t);

Writeln(f2,’t=’,t:4:2,’ y=’,y:7:3);

t:=t+dt;

end;

close(f1);

close(f2);

end.

 

Файл исходных данных primer1.dat необходимо создать. В него нужно записать численные значения переменных, указанных в списке ввода процедуры Read, через пробел в том же порядке. Для приведенной выше программы содержимое файла primer1.dat должно иметь следующий вид:

0.6 2.1 0 3.1 0.15

Файл результатов primer1_3.res будет создан автоматически в результате выполнения программы.

 





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


Дата добавления: 2015-10-01; Мы поможем в написании ваших работ!; просмотров: 530 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Наглость – это ругаться с преподавателем по поводу четверки, хотя перед экзаменом уверен, что не знаешь даже на два. © Неизвестно
==> читать все изречения...

2684 - | 2249 -


© 2015-2025 lektsii.org - Контакты - Последнее добавление

Ген: 0.009 с.