creating a function to find horizontal distance given initial velocity and initial angle.
2 次查看(过去 30 天)
显示 更早的评论
Im trying to create a function that will allow for an input variable of the initial velocity, v and the initial angle, a; that comes up with the output of the horizontal distance once the object gets back to the starting y position.
so far I have
v = input('enter cannon ball exit velocity(m/s):'); %input of the exit velocity of the cannon in m/s a = input('enter cannon ball exit angle from horizon(degrees):'); %input of the exit angle from the horizon of the cannon ball in degrees
function [x]=cannon(v,a) g = -9.8; %gravitaitional constant in m/s^2 t = (2*(v*sin(a)))/g; %equation for the time until cannon hits the ground at the inpact location x = (v*cos(a))*t %equation for the horizontal distance where the cannon hits the ground at the impact location end
2 个评论
回答(1 个)
Adam Danz
2018-8-7
It's not clear whether your question is related to code or concept. Concerning the code, you pretty much already have it written. I filled in some lines and reformatted it so that your function is called after the inputs are collected and it produces an output printed in the command window.
v = input('enter cannon ball exit velocity(m/s):'); %input of the exit velocity of the cannon in m/s
a = input('enter cannon ball exit angle from horizon(degrees):'); %input of the exit angle from the horizon of the cannon ball in degrees
x = cannon(v,a);
fprintf('The horizontal displacement is %.2f.\n', x)
function x = cannon(v,a)
g = -9.8; %gravitaitional constant in m/s^2
t = (2*(v*sin(a)))/g; %equation for the time until cannon hits the ground at the inpact location
x = (v*cos(a))*t %equation for the horizontal distance where the cannon hits the ground at the impact location end
end
I haven't looked at the code conceptually.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Software Development Tools 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!