function addNum(uint _a, uint _b) public pure returns (uint){
returns _a + _b;
}
here the fn addNum depend only on the input parameters and does not deal with the blockchain state so it is a pure fn.
Note:
If the function returns the result from input parameter only but has a modifier which depends on the state variable then the function is not a pure function.