Community Tip - Learn all about the Community Ranking System, a fun gamification element of the PTC Community. X
Writing f(x):=... makes x an arbitrary variable - more precisely: the formal argument of the function. That way it has nothing to do with the variable x you defined earlier. So the attempt of the numerical evaluation therefore had to fail.
If you write f(x)= after defining the function, that x is the current argument of the function and for numerical evaluation it has to be either a constant value or a variable which had assigned a value before.