rispondo alla seconda dom:
le funzioni pascal ritornano assegnando un valore al proprio nome:
codice:
function f: integer;
begin
f:=10;
end;
ci puoi fare anche le chiamate ricorsive