Turing decidable for arbitrary TM and String How do I go on about finding an answer to 

Is it Turing decidable given an arbitrary Turing machine M and a
  arbitrary string w that M will accept w when M has run exatly
  an even number of steps?

Is there any "mechanical" way to tackle these kinds of problems when It comes to finding out if an arbitrary TM is decidable or not given some conditions, as the one above, or lets say after the machine has ran 100 steps or more?
 A: I am going to assume that the problem is equivalent to accepting the pair $(M,w)$ iff $M(w)$ halts and the number of steps it takes to halt is even. We call the set of all such pairs $P$.
In that case, we can prove by reduction to the halting problem that it is not computable.
Given a machine $M$ and an input string $w$ we want to know if $M(w)$ halts. But we can augment $M$ with a new state which makes a null operation in the beginning (writing a 0 over a 0 or a 1 over a 1 and then changing to the initial state of $M$, for example), and then executes $M$. We call this modified machine $M'$.
Then it is the case that $M(w)$ halts iff $(M,w)\in P$ or $(M',w)\in P$. So if we could compute $P$ we could compute the halting problem, which we know it is not computable. Thus it follows that $P$ is not computable.

The procedure I exposed above is an instance of reduction, where we show that a problem is not computable by proving that in case it were we could compute another problem we know it is not computable (almost always we will try to reduce to halt, albeit there are exceptions).
Another useful result to establish uncomputability is Rice's theorem, which says that all semantical properties (that is, properties regarding the function it computes) of Turing Machines are not decidable. However, it would not have worked here because the property that distinguished our set of TM was not sintactical (it depended on the concrete TM implementing the computed function).
