Domain:
The domain of a function is simply the set of all possible x-values for which the function produces an output. For any number x, as long as p(x) is also a number, that x is in the domain of p(x).
Conversely, any number x which p(x) does not know what to do with is not in the domain of p(x). This alternate approach is often easier.
In this example, p(x)=1/(x+5)-9, and we can immediately see where a potential problem is. Since x appears in a denominator, x cannot take on any value that makes the denominator 0; that would create division by 0, which is undefined. So we simply need to keep x from making x+5=0. (All other x values are okay.)
The only x that would make that true is x="-5" (which we get by solving x+5=0 for x). That means, our domain is all numbers other than -5, or:
"Domain: " {x|x!="-5"}
("all x such that x is not "-5"")
Range:
Similar to domain, the range of a function is all the possible output values that function can take on. If x is in the domain, and p(x)=y, then that y is in the range of p.
And, conversely, if there is no x such that p(x)=y, then that y is not in the range of p. So, can we find some values that are impossible for the function to be?
Yes we can, since it is not possible for 1/(x+5) to be 0. No matter how large (positive or negative) x is, we cannot divide 1 by a real number and get 0.
(Side note: we can, however, make 1/(x+5) as close to +-oo as we like, by taking x close to "-5". So 1/(x+5) can be anything else, just not 0.)
Since 1/(x+5) cannot be 0, we know that 1/(x+5)-9 cannot be -9. Thus, our range is all y-values except -9:
"Range: " {y|y!="-9"}
("all y such that y is not "-9"")
graph{1/(x+5)-9 [-22.47, 6, -12.71, 1.53]}