Procedure con parametri per variabile

Passaggio dei parametri per riferimento/indirizzo/variabile
sub2Scambia il contenuto di 2 variabili

Procedure scambia2(Var x, y: Real);
Var
    temp: Real;
Begin
    temp:=x:
    x:=y;
    y:=temp;
End;

Ordina il contenuto di 2 variabili

Procedure ordina2(Var x, y: Real);
Begin
   If(x > y) Then
      scambia2(x,y);
End;

Ordina il contenuto di 3 variabili

Procedure ordina3(Var x, y, z: Real);
Begin
   ordina2(x,y);
   ordina2(y,z);
   ordina2(x,y);
End;

Incrementa la variabile a

Procedure incrementa(Var a: Integer);
Begin
    a:=a+1;
End;

Incrementa di 2 la variabile a

Procedure incrementa2(Var a: Integer);
...

Esercizi

  1. Decrementa la variabile a
  2. Decrementa di 2 la variabile a
  3. Raddoppia(a)
  4. Dimezza(a), …
  5. Semplifica(numeratore, denominatore)