Sunteți pe pagina 1din 11

Instruciunea REPEAT indic repetarea unei

secvene de instruciuni n funcie de valoarea


unei expresii booleene.Sintaxa instruciunii n
studiu este:


Exemple:

1) Repeat x:=x-1 until x< 0;

2) repeat
y:=y+delta;
writeln(y)
until y>20.5;
MODUL DE FUNCIONARE AL
INSTRUCIUNII:

Se execut secvena de instruciuni;
Se evalueaz expresia logic;
Dac aceasta ia valoarea FALSE se
execut din nou secvena de
instruciuni, contrar se trece mai
departe.
Observaie: secvena se execut cel puin
odat, dup care se pune problema dac s
se repete sau nu (prin evaluarea expresiei
logice).
Exemplu 1. Se citete un numr natural n. S se calculeze suma primelor
n numere naturale.
program sum;
var n, s, i: integer;
begin
write (n=); readln (n);
i := 1; s := 0;
repeat
s := s + i;
i := i + 1
until i > n;
writeln (s=, s)
end.
Exemplu 2:
S se scrie un program care calculeaz suma
numerelor naturale mai mici sau egale ca N.
Sarcin:
Lansai Pascal-ul.
Inlocuii insruciunea While cu instruciunea
Repeat.
Exemplu 3:
se citete n, numr natural. S se descompun n factori primi.

program factp;
var n, d, fm :integer;
begin
write (n=); readln (n);
d := 2;
repeat
fm := 0; {fm reprezint multiplicitatea divizorului d}
while n mod d = 0 do begin
fm := fm + 1;
n := n div d
end;
if fm <> 0 then writeln (d, la puterea, fm);
d := d + 1
until n = 1
end.
Aplicaie
Sarcina 1: S se scrie un program care
calculeaz produsul numerelor naturale mai mici
sau egale ca N.
Sarcina 2:
Ex. 7 (a), pag. 107

Tema pentru acas:
3.15. pag. 104
Ex. 7 (b,c,d), pag. 107