as Walter pointed out this is a BVP. However, you can and I personally would use ode45 and the so-called shooting method to solve this problem. I recommend taking a step-by-step approach:
- First solve the differential equation of the projectile without worrying about x-axis crossing or how to manipulate the initial angle.
- Next use an events function to identify the x-axis crossing. Here is an example that may be helpful.
- Once you get this to work implement the shooting method. These are a few more lines of code, and this is where you (MATLAB) would do the iterations you are referring to in your question.
Feel free to share your code if you have more questions.