I'd say that a function is basically an algorithm with a name.
Going farther, I'd say that we give it a name so that we can tell the computer to do that algorithm using one word, instead of having to type out all of those lines of code every time we want that algorithm to happen.
Going even farther, I'd say that a function can be algorithms within algorithms (or functions within functions). For example:
eatBreakfast might be a function that includes the functions
pourCereal, and also algorithms for walking from one part of the kitchen to another, in between those functions.