transforming $\,x^3 + x^2 + 1 \implies x\left(x^2 + x + \dfrac{1}{x}\right) \implies\,$ div by $\,0\,$?! EDIT: Sorry. I basically was confused by that just valid mathematical transforming could lead into a undefined behavior. 
I have to admit, my question has not much to do with the zero of a function, i've just used one method of the "zero calculating tool" set to reshape my function. (i explain that a bit more below)
I have a function $\,f(x)=x^3 + x^2 + 1\,$. I can now reshape $\,1\,$ to $\,x^0\,$:
\begin{align}
    f(x)&= x^3 + x^2 + x^0
\end{align}
and factor one x out to 
\begin{align}
    x\left(x^2 + x + x^{-1}\right)
\end{align}
A product of zero remains zero. Therefore, either
\begin{align}
    x=0
\end{align}
or 
\begin{align}
     x^2 + x + \dfrac{1}{x} = 0
\end{align}
But $\,\dfrac{1}{x}\,$ is not defined, as it could be $0$ and divide through $0$ is not valid.  My confusion arises primarily because reformatting/reshaping a function normally doesn't change its value. It's simply another way to write it, hence it should be the exact same. But as i showed above, it is not. The beginning function is a normal grade 3 function. But simply transforming can obviously change the whole validity of a function. That's what i don't understand.
My Question: 


*

*Where is my mistake?

*Is it expected that applying valid mathematical methods to a function correctly can result in not defined things?

 A: I think you are confused with the definition of a "zero" of a function. If $f : \mathbb R \to \mathbb R$ is a function, we call $a \in \mathbb R$ a zero of $f$ when $f(a) = 0$. Of course $a$ does not have to be equal to $0$ to satisfy this property. Furthermore, the zeros of a polynomial function satisfy the following (recall that a polynomial is a linear combination of non-negative powers of $x$) : 
$$
f(a) = 0 \quad \Longleftrightarrow \quad f(x) = (x-a) g(x),
$$
where $g(x)$ is also a polynomial function. This is because for polynomial functions, we can always write 
$$
f(x) = (x-a) g(x) + f(a)
$$
(this is the Euclidean algorithm, commonly called long division). So if you begin with $a = 0$, you get $x^3 + x^2 + 1 = x(x^2+x) + 1$, but you will not be able to get anything good out of that $1$ term precisely because $f(0) = 1$. 
Finding the zero explicitly is usually a hard task ; the standard tricks involve either being lucky and exploiting symmetry (which involves either playing around with the numbers, or in a more advanced manner, Galois theory) or either a numerical approach which approximates the zeros. I did not try to find the zero myself in this case (Wolfram Alpha tells us there is only one zero and the two other are complex zeroes, so I'll trust it).
Added : to answer your edit, note that 
$$
x^3 = x \cdot x^2, \quad x^2 = x \cdot x
$$
is valid for any $x \in \mathbb R$, where as
$$
1 = x \cdot \frac 1x
$$
only works when $x \neq 0$. Therefore, your factorization proves that 
$$
( \, x = 0 \, ) \quad \text{ or } \quad ( \, x \neq 0 \text{ and } x^2 + x + \frac 1x = 0 \, ).
$$
It's only a matter of looking at what you are assuming when you factor, there is no "mistake", so to say. Valid mathematical methods produce valid mathematical facts, you just need to come to the right conclusions! Math is flawless (or at least I like to live with this assumption), but the human doing the math might make some mistakes in the reasoning. We try to avoid that!
Hope that helps,
A: The function
$$f(x)= x^3 + x^2 + 1$$ 
has domain $x \in \mathbb{R}$ when otherwise unspecified. It is not the same function as
$$g(x)= x \left(x^2 + x + \frac 1x\right) $$
whose domain is considered to be $x \in \mathbb{R}\setminus\{0\}$.
So $f(x) = g(x)$ if $x\ne0$.
If you wish to utilize the form of $f(x)$ where you factor out an $x$ but retain the original mapping, you could employ some extra notation... Perhaps...
$$f(x) = \begin{cases}
x \left(x^2 + x + \frac 1x\right) & x \ne 0 \\
 1 & x = 0 \\
 \end{cases}$$
It appears that in your post, you've manipulated the function to a case that is valid on only part of the original domain of definition. That is, when you created the $1/x$ term, you made the assumption that $x\ne 0$.
To avoid future confusion, be 1) aware of the domain and 2) aware of any assumptions you make during algebraic manipulations. 
