Instrucţiuni
structurate REPEAT şi WHILE”
- Se dă următoarea secvenţă de instrucţiuni:
Read(x) ;
Repeat
R :=x mod 10
If r
mod 2 =0 then write(r);
X:=x
div 10
Until x=0;
Precizaţi ce realizează această
secvenţă:
a) afişează cifrele lui x;
b) afişează cifrele pare ale lui x;
c)
verifică dacă x este multiplu de 10
|
1.2 Transformaţi secvenţa dată folosind
instrucţiunea While
|
- Se dă următoarea secvenţă de instrucţiuni:
Read (y,x) ;
While y<>o do
Begin
X:=x+y;
Y:=y div 10
End ;
Write(x);
2.1 precizaţi ce valori afişează secvenţa dată
pentru y=425 şi x=32
a) 32
b)503
c)457
|
2.2 Ce valoare trebuie să aibă y pentru ca
secvenţa dată să se execute o singură dată ?
|
- Se dă următoarea secvenţă de instrucţiuni:
Read(x,y);
If x<>y then
Repeat
If x>=y then x:=x+y
Else
y:=y-x
Until x=y;
Apreciaţi cu adevărat sau fals următoarele afirmaţii:
a)
secvenţa
conţine o structură repetitivă corectă întrucît la intrarea în structură x este
diferit de y;
b)
secvenţa
conţine o structură repetitivă incorectă întrucît condiţia de oprire (x=y) nu
poate fi atinsă deoarece la intrarea în structură x este diferit de y;
c)
secvenţa
conţine o structură repetitivă infinită întrucît în corpul ciclului operaţia
x:=x+y contrazice condiţia x=y (x creşte nelimitat).
- Care dintre următoarele secvenţe de instrucţiuni numără exact 10
valori egale cu 0 citite de la tastatură:
a) read(x);
c:=0;
repeat
If
x=0 then c:=c+1;
write(x)
until
c=10
|
b) read(x);
repeat
c:=0;
If
x=0 then c:=c+1;
until
c=10
|
c) read(x);
c:=0;
repeat
x:=0
;
c:=c+1
until c=10
|
- Se dă următoarea secvenţă de instrucţiuni:
Repeat
Read(x,y) ;
S :=x+y ;
Until s=100;
Precizaţi ce
realizează această secvenţă:
a)
se calculează
suma unui şir de valori x şi y pînă cînd suma lor este 100 ;
b)
citeşte
perechi de numere x, y pînă cînd suma valorilor dintr-o astfel de pereche este
100 ;
c)
citeşte
valori x, y pînă cînd s=100.
- Se dă următoarea secvenţă de instrucţiuni:
Read(x) ;
While x<>y do
Begin
Read (x);
y:=x;
C:=c+1
End;
Write(c)
Apreciaţi cu adevărat sau
fals următoarele afirmaţii:
a)
secvenţa
este greşită întrucît nu poate fi evaluată condiţia x<>y la prima intrare
în structură (nu se cunoaşte y);
b)
secvenţa
este greşită întrucît în blocul de instrucţiuni y:=x contrazice condiţia x<>y (repetiţie infinită);
c)
secvenţa
este corectă şi determină numărul de valori citite x.