Array indicates must be positive integers or logical values
1 次查看(过去 30 天)
显示 更早的评论
%question 3
clf
t= 0:0.01:2;
y3= 8*sin(20*pi*t)+8*sin(22*pi*t);
plot(t,y3)
xlabel('t')
ylabel('y3')
%question 4
clf
t= 0:0.01:2;
expA= exp(-1.2*t);
y4= y3.*expA
plot(t,y4)
xlabel('t')
ylabel('y4')
%question 5
clf
H= [34 -56 23];
J=[9 12 26];
squrH = H.^2;
MagH = sqrt(sum(squrH))
squrJ = J.^2;
MagJ= sqrt(sum(squrJ))
Angle =acos(sum(H.*J) / (sqrt(sum(H.^2)) * sqrt(sum(J.^2))))
angeldeg = Angle*180/pi
回答(3 个)
Star Strider
2020-2-3
Taking a wild guess, you likely have a variable named plot or sum (or something similar) that is overshadowing a MATLAB function with the same name.
Without the complete error message (all the red text copied from your Command Window and pasted to a Comment here), it is not possible to determine what that overshadowed function is.
Assuming it is sum, the way to determine that is to type this in a script or your Command Window:
which sum -all
If the first line returned is:
sum is a variable.
you have found the problem.
The solution is to rename the variable to something that makes sense in the context of your code.
0 个评论
Sridhar SG
2020-2-3
编辑:Sridhar SG
2020-2-3
Your code got successfully executed

MATLAB allows storing of any type of value inside the arrays, only the index values of array cannot be fractional numbers, negative integers, zero or complex/imaginary numbers
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Logical 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!