What are functional and non-functional requirements?

Functional requirements defines the behavior of a system.  
Non-functional requirements specify how the system should behave. in other words they specify the quality requirements and judge the behavior of a system.
E.g.
Functional - Display a chart which shows the maximum number of products sold in a region.
Non-functional – The data presented in the chart must be updated every 5 minutes.