|NumberQ[expr]||test whether expr is explicitly a number|
|NumericQ[expr]||test whether expr has a numerical value|
Testing for numeric quantities.
is a symbol, so Pi+3
is not explicitly a number.
It does however have a numerical value.
This finds the explicit numerical value of Pi+3
Mathematica knows that constants such as Pi are numeric quantities. It also knows that standard mathematical functions such as Log and Sin have numerical values when their arguments are numerical.
, and is therefore not a numeric quantity.
Many functions implicitly use the numerical values of numeric quantities.
In general, Mathematica assumes that any function which has the attribute NumericFunction will yield numerical values when its arguments are numerical. All standard mathematical functions in Mathematica already have this attribute. But when you define your own functions, you can explicitly set the attribute to tell Mathematica to assume that these functions will have numerical values when their arguments are numerical.