Let V_n be n-dimentional vector space over GF(q). E is k-dimentional vector subspace which is a linear q-ary (n,m,d) code and also consider the radius e = [(d-1)/2].
Assume that E is not a perfect code and y is such vector that is not a part of any of the spheres centered on codewords with radius e, and also assume there is a codeword x such that d(x,y) = e + 1. Then the vector z = y - x, has weight wt(z) = e+1 and again the distance is more than e betweeen z and all the codewords.
My question is why is the distance between z and all codewords still more than e?
Because if the distance between $z$ and a codeword $x'$ was $d(x',z)=\delta \leq e$ then $d(y,x+x')=w(y-(x+x'))=w((y-x)-x')=d(z,x')=\delta \leq e$ but the code is linear so $x+x' \in V_n$ and by definition of $y$, $d(y,x+x') > e$, that is absurd