"Error using input The first argument to INPUT must be a character vector."

4 次查看(过去 30 天)
I keep getting error from Matlab when used this code and it refere that the error in "i = input(t);", I attached my code, can anyoone helping me
start_time = 0;
end_time = 10;
dt = 0.005;
times = start_time:dt:end_time;
N = numel(times);
x = [0; 0; 10];
xdot = zeros(3, 1);
theta = zeros(3, 1);
deviation = 100;
thetadot = deg2rad(2 * deviation * rand(3, 1) - deviation);
for t = times
i = input(t);
omega = thetadot2omega(thetadot, theta);
a = acceleration(i, theta, xdot, m, g, k, kd);
omegadot = angular_acceleration(i, omega, I, L, b, k);
omega = omega + dt * omegadot;
thetadot = omega2thetadot(omega, theta);
theta = theta + dt * thetadot;
xdot = xdot + dt * a;
x = x + dt * xdot;
end
  4 个评论
Stephen23
Stephen23 2019-9-22
"can you please check i = input(t); "
There is no point in checking that: as its documentation clearly states, input's first argument must a character vector. The variable t is not a character vector.
Walter Roberson
Walter Roberson 2019-9-22
i = input( num2str(t) );
But I would have to ask what the user is supposed to understand from being prompted with a time, especially as their input would be ignored ?
Is this all a way to insert a pause that the user has to press return to continue ? If so then just use the pause command

请先登录,再进行评论。

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Pattern Recognition and Classification 的更多信息

产品


版本

R2019b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by