Программирование на Pascal.

Содержание

Слайд 2

Цикл с предусловием (While)

Цикл с предусловием (While)

Слайд 3

Цикл с предусловием

while <условие> do begin{тело цикла}end;

While <условие> do
Begin
<Действия>
End;

Цикл с предусловием while do begin{тело цикла}end; While do Begin End;

Слайд 4

Порядок выполнения цикла с предусловием оператора While

While <условие> do <тело цикла>

Синтаксис

Порядок выполнения цикла с предусловием оператора While While do Синтаксис оператора: является
оператора:

<Условие> является логическим выражением. Это означает, что результатом вычисления этого выражения является одно из значений TRUE – истина или FALSE – ложь.
Тело цикла выполняется до тех пор, пока значением условия является TRUE. Обратите внимание, что возможна ситуация, когда условие всегда будет истинным. В этом случае цикл будет выполняться бесконечно.
Если условие изначально ложно, тело цикла не выполнится ни разу, и управление сразу будет передано на оператор, следующий за телом цикла.

Пример:
Eps := 0.1;
i := 2;
While i>Eps do begin
i := i-i/2
end;
В данном примере производится расчет некоторой величины, пока получающееся значение не окажется меньше ранее заданной погрешности Eps.

Слайд 5

WHILE (пока) <условие> DO (выполнять) BEGIN <тело цикла > END;

Сначала проверяется значение условия.

WHILE (пока) DO (выполнять) BEGIN END; Сначала проверяется значение условия. Пока оно
Пока оно «истинно» выполняются операторы циклической части. Когда значение условия «ложно» происходит выход из цикла.
Можно в тело цикла поставить операторы перехода (EXIT и GOTO). Они передают управление за пределы цикла.
Этот цикл может работать как цикл с параметром, но при этом необходимо изменять переменную, являющуюся счетчиком цикла, с помощью оператора присваивания.
!!! Если при первой проверке условие «ложно», то цикл не выполнится ни разу.

Слайд 6

Надо знать:

Можно использовать сложные условия
Если в теле цикла только один оператор, слова

Надо знать: Можно использовать сложные условия Если в теле цикла только один
begin и end можно не писать:

while (a < b) and (b < c) do begin
{тело цикла}
end;

while a < b do
a := a + 1;

Слайд 7

Надо знать:

условие пересчитывается каждый раз при входе в цикл
если условие на входе

Надо знать: условие пересчитывается каждый раз при входе в цикл если условие
в цикл ложно, цикл не выполняется ни разу
если условие никогда не станет ложным, программа зацикливается

a := 4; b := 6;
while a > b do
a := a – b;

a := 4; b := 6;
while a < b do
d := a + b;

Слайд 8

Сколько раз выполняется цикл?

a := 4; b := 6;
while a < b

Сколько раз выполняется цикл? a := 4; b := 6; while a
do a := a + 1;

2 раза
a = 6

a := 4; b := 6;
while a < b do a := a + b;

1 раз
a = 10

a := 4; b := 6;
while a > b do a := a + 1;

0 раз
a = 4

a := 4; b := 6;
while a < b do b := a - b;

1 раз
b = -2

a := 4; b := 6;
while a < b do a := a - 1;

зацикливание

Слайд 9

Замена for на while и наоборот

for i:=1 to 10 do begin
{тело

Замена for на while и наоборот for i:=1 to 10 do begin
цикла}
end;

i := 1;
while i <= 10 do begin
{тело цикла}
i := i + 1; end;

for i:=a downto b do
begin
{тело цикла}
end;

i := a;
while i >= b do begin
{тело цикла}
i := i - 1; end;

Замена while на for возможна только тогда, когда можно заранее рассчитать число шагов цикла.

Замена цикла for на while возможна всегда.

Слайд 10

Вычислить значения функции У= Х2, для всех Х от 1 до n

Вычислить значения функции У= Х2, для всех Х от 1 до n
с шагом 1.
Решение

Задача

Слайд 11

Решение:

Паскаль
Program Task;
Uses Crt;
Var x,y,n: Integer;
Begin
ClrScr;
Write(‘n=’);ReadLn(n);
x := 1;
While x<=n

Решение: Паскаль Program Task; Uses Crt; Var x,y,n: Integer; Begin ClrScr; Write(‘n=’);ReadLn(n);
do
Begin
y:= x *x;
WriteLn (‘x=’,x,’ y=’,y);
x:= x+1;
End; ReadLn;
End.

К условию

Слайд 12

Задача
Найти сумму чисел натурального ряда: S=1+2+3+4+…+n
Решение

Задача Найти сумму чисел натурального ряда: S=1+2+3+4+…+n Решение

Слайд 13

Решение:

Блок- схема

Паскаль
Program Task;
Uses Crt;
Var n, x, s : integer;
Begin
Write (‘n=’); ReadLn (n);

Решение: Блок- схема Паскаль Program Task; Uses Crt; Var n, x, s
S:=0;
X:=1;
While x<=n do
Begin
S:=S+X;
X:=X+1;
End;
WriteLn (‘Сумма=’, S);
End;

Начало

n

S:=0
X:=1

X<=n

S:=S+X
X:=X+1

S

Конец

_

_

+

К условию

Имя файла: Программирование-на-Pascal..pptx
Количество просмотров: 786
Количество скачиваний: 0