Postat de: Carmen Anton | 20/11/2013

Structura alternativa


Structuri de control

             Clasificare:

–      secvenţiale: atribuire, instrucţiunea compusă, apeluri de funcţii sau proceduri;

–      alternative: if – then, if – then – else, şi case;

–      repetitive: while, repeat, for.

 

  1. Instrucţiunea de atribuire: utilizează semnul := şi are sintaxa:

Var := expresie   unde  expresie poate fi o valoare constantă, altă variabilă sau o expresie de tipul variabilei var. (! Excepţii: – variabila de tip real şi expresie de tip întreg, variabila de tip string şi expresie de tip char, valoarea expresiei este dintr-un interval iar variabila este întreagă sau reală)

Cele trei tipuri de atribuire:

Var := valoare; mai poartă numele şi de iniţializare;

Var := var + 1; mai poartă numele şi de incrementare;

Var := var – 1; mai poartă numele şi de decrementare;

Var := expresie;

Var1 := var2;

 EX:   var x, y, z : integer;  a : real;

x := 7;  x := x + 1;       x := x – 1;         a := (y + 5) / z;            z := x;

2.  Instrucţiunea compusă: utilizează cuvintele rezervate: begin   ……….  end;  între care se trec instrucţiuni de orice fel, executarea instrucţiunii compuse constă în execuţia tuturor instrucţiunilor dintre begin şi end în ordinea în care apar.

OBS:

–  orice program are cel puţin o instrucţiune compusă;

–  caracterul ; desparte instrucţiunile.

EX: Ionel primeşte de la bunica lui o sumă de bani şi de la bunicul lui altă sumă de bani.  Să se determine ce sumă de bani are Ionel în total.

Program suma;

Var a, b, c : integer;

Begin

            Write(‘Suma de la bunica: ’);readln(a);

            Write(‘Suma de la bunicul: ’);readln(b);

            c := a+b;

            Writeln(‘Suma totala este de: ‘,c);

End.

 3. Instrucţiunea if – then  are următoarea sintaxă:

 IF  conditie THEN instructiune;

Funcţionare: se evaluează condiţia iar dacă rezultatul ei este true atunci se execută instrucţiunea de după then, iar dacă valoarea e false atunci se trece la următoarea instrucţiune de după if.

OBS: Dacă se doreste executarea  mai multor instrucţiuni după then, atunci acestea se încadrează cu o instrucţiune compusă.

EX: Citindu-se distanţa parcursă de o maşină şi timpul necesar parcurgerii (valori întregi) se cere să se determine viteza cu care aceasta se deplasează (numai dacă timpul este mai mare decat 0).

Program ex_compusa;

Var distanta,timp: integer;  viteza:real;

Begin

            Write(‘dati timpul:’); Readln(timp);

            Write(‘dati distanta:’);  Readln(distanta);

            If timp>0 then begin Viteza:=distanta/timp;

                                                  Writeln(‘Viteza masinii este:’,viteza);

                                       End;

End.

 4. Instrucţiunea if – then – else are sintaxa:

 IF conditie THEN  instr1  ELSE   instr2;

Funcţionare: se evaluează condiţia iar dacă rezultatul ei este true atunci se execută instrucţiunea de după then  instr1, iar dacă valoarea e false atunci se execută instrucţiunea de după else instr2, după  oricare din cazuri se trece la instrucţiunile de după if.

EX: Să se scrie un program care verifică dacă un număr citit de la tastatură este divizibil cu un număr a dat.

Program divizibil;

Var n,a:integer;

Begin

      Write(‘Dati nr.:’);readln(n);

      Write(‘Dati posibilul divizor:’);readln(a);

If a<>0 then   If n mod a=0   then writeln(‘ Numarul ‘,n,’ este divizibil cu ‘,a)

                                                            else writeln(‘ Numarul ‘,n,’ nu este divizibil cu ‘,a)

else writeln(‘NU se poate realiza impartirea’);

end.

Exercitii cu instructiunea IF  exercitii IF

Lista de probleme pentru instructiunea IF  Probleme operatii diverse si instructiuni alternative

 


Lasă un răspuns

Completează mai jos detaliile despre tine sau dă clic pe un icon pentru autentificare:

Logo WordPress.com

Comentezi folosind contul tău WordPress.com. Dezautentificare / Schimbă )

Poză Twitter

Comentezi folosind contul tău Twitter. Dezautentificare / Schimbă )

Fotografie Facebook

Comentezi folosind contul tău Facebook. Dezautentificare / Schimbă )

Fotografie Google+

Comentezi folosind contul tău Google+. Dezautentificare / Schimbă )

Conectare la %s

Categorii

%d blogeri au apreciat asta: