Both(functions and Procedures) are the Oracle Objects that work explicitly towards database objects like Tables,Views.
The diff. b/t Stored Procedures and Functions
1) The procedures doesn't return values. whereas the function returns value.
2) The procedures accept more than one argument whereas the functions not.
both the procedure and functon accept more than one variable.Function do not have an out variable where as procedures return variable to the calling environment using out variables not the return cluase where as function return value using return clause.and it must return a value but procedure may or maynot.