Лекция: Количества

Первоначальное значение k: = 0

Подсчет в цикле: k:= k + 1

2.1 Среди чисел 1 < N < 100 найти все пары чисел, для которых их сумма равнялась бы их произведению.

program zadacha ( input, output ); {нахождение пар чисел}

var k, a, b: integer;

begin

r:=0;

for a:=l to 100 do

for b:=l to 100 do

begin

if a + b = a * b then

begin

k:=k + 1;

writein('числа',a,b);

end

end;

if k=0 then writeln ('таких чисел нет') else ('k=', k);

end.

 

2.2 Определить, сколько из N заданных точек принадлежат графику
у = |х|

program zadacha; { количество точек, принадлежащих графику }

var k, i, n: integer; х, у: real;

begin

writeln ( 'введите количество точек N=');

readln (n) ;

k:=0;

for i:=1 to n do

begin

writeln ('введите координаты', i ,'-ой точки х и у') ;

readln (x,y) ;

if y=abs (x) then k:=k+l

end;

if k=0 then writeln ('таких точек нет') else writeln ('k=',k)

end.

Произведений

Первоначальное значение р:=1

Подсчет в цикле: р:= р *{множитель}

3.1 Вычислить N!

program zadacha; { нахождение факториала числа N }

var n, p, i: integer;

begin

writeln ('введите число n=');

readln (n) ;

p:=l;

for i:=l to n do

p:=p*i;

writeln ('факториал числа' ,n,' = ' ,p)

end.

 

Оператор цикла с постусловием

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

Формат оператора цикла с постусловием:

Repeat

<оператор 1>;

<оператор 2>;

<оператор М>

until <условие>;

где repeat – повторять;

<оператор 1>;

<оператор 2>;

<оператор N> – последовательность операторов внутри цикла (тело цикла);

until – до;

<условие> – логическое выражение.

Этот процесс завершается, тогда когда после выполнения заданной последовательности операторов логическое выражение <условие> станет TRUE (истинно).

Оператор for v:=E1 to E2 do S;

Эквивалентен if E2>=E1 then

begin

v:=El;

repeat

S;

v:=succ(v)

until v>E2;

end;

Пример 1.Распечатать числа Фибоначчи от 1 до N. (Каждое число в последовательности, начиная с третьего, получается сложением двух предыдущих чисел. Например: 1, 1, 2, 3, 5, 8, 13, 21...).

program zadacha; { числа Фибоначчи }

var a, b, c, n, i: integer;

begin

writeln ('введите число N=') ;

readln (n) ;

a:=l; b:=l;

writeln (a,b) ;

i:=3;

repeat

c:=a+b;

writeln (c) ;

a := b; b := c;

until i>n

end.

 

Пример 2.Вычислить значение переменной у, при заданном значении n.

program zadacha ;

var i, n: integer; у: real;

begin

writeln ('введите число N=') ;

readln (n) ;

y:=1; i:=y;

repeat

y:=y+1/i; i:=i+1;

until i>n;

writeln ( ' y= ', y)

end.

 

еще рефераты
Еще работы по информатике