Decidability of language L = { n : ∃x∈N, n = 3x+2 }
Yes, your approach is correct. 

The description of your algorithm would be clearer if it also mentions the following.


The algorithm rejects the empty word immediately.
That canonical enumerator of $\{0,1\}^∗$ enumerates all positive integers in increasing order.
If $3x+2$ is smaller than the input then the result will be ignored and the enumerator will keep going.


Another algorithm that decides the language would be subtracting 3 from the input number and checking the result repeatedly. If the result is 2, it accepts. If the result is negative, it rejects. It also rejects the the empty word immediately.