program Minha_Primeira_Funcao;
      {    O comportamento da funcao e' quase identico ao do
        procedimento. Ao contrario do procedimento, a funcao
        retorna uma valor. }
      
        function Dobra(X:extended):extended;
        begin { of function Dobra }
        Dobra:=X+X;
        end;  { of function Dobra }
      
      begin { of program }
      Writeln(Dobra(2):10:2);
      end.  { of program }