Тема:
Циклы.
Часто при решении задач возникает потребность
в повторении одного и того же действия несколько раз. Для таких случаев
существуют циклы.
Цикл While.
While [условие] do
begin
[операторы];
end;
Задача.
Найти сумму и произведение 10 чисел, введеных
с клавиатуры
Program sp;
uses crt;
var s,p,x:real;
n:shortint;
brgin
clrscr;
s:=0;
p:=1;
n:=0;
while n<10 do
begin
write('vvedite ',n+1,'
chislo->');
readln(x);
s:=s+x;
p:=p*x;
end;
writeln('summa=',s:0:2,' proizv=',p:0:2);
readkey;
end.
Цикл Repeat.
Repeat
[операторы];
until [условие];
Цикл выполняется до тех пор, пока условие False.
Как только условие True, цикл заканчивается.
Задача.
В первый день в банк положили 1 рубль. В каждый
последующий день в банк клали вдвое большую сумму, чемв предыдущий. Банк
сможет выдавать кредиты только после того, как в нем будет более 30000
рублей.На какой день это произойдет?
Program b;
uses crt;
var s,r:longint;
d:ishortint;
begin
clrscr;
d:=1;
r:=1;
s:=0;
repeat
s:=s+r;
r:=r*2;
d:=d+1;
until s>30000;
writeln('d='.d);
readkey;
end.
Цикл For.
For [var]:=[0] to [10] do
{имя переменной и значения написаны в качестве
примера. кв. скобки в программе писать не надо.}
begin
[операторы];
end;
Var - переменная целого типа. В начале цикла Вы задаете
переменную [var] и ее начальное значение [var]:=0, затем
Вы задаете значение, большее начального to [10], и пишите тело
цикла. Переменная [var] изменяется сама, т.е. ее изменять
в теле цикла не надо. Если вам нужно, что бы переменная [var]
изменялась от 10 до 0, то нужно написать следующее:
For var:=10 downto 0 do ...
|