How to graph using a for loop

1 次查看(过去 30 天)
I am asking for help in plotting a line graph in my "for" loop program. The program is able to run the calculations but I am not able to graph. Below is the code i have created.
clc
f=196.2;
fi=0; finc= pi/180; ff=pi/4
for x=0:pi/180:pi/4;
ac= (f*cos(x))/((sin(pi/6)*cos(x))+(cos(pi/6)*sin(x)))
fprintf('Force of AC is %7.2f\n',ac)
bc= ((ac*cos(pi/6))/cos(x))
fprintf('Force of BC is %7.2f\n',bc)
end
hold on;
xx=x(1:length(x));
plot(xx,ac)

采纳的回答

KSSV
KSSV 2020-3-24
YOu need not use a loop as the other user has suggested you. If you use a loop, you need to intiilaize the array and save it in a loop as below:
f=196.2;
fi=0; finc= pi/180; ff=pi/4 ;
x=0:pi/180:pi/4;
ac = zeros(size(x)) ;
for i = 1:length(x)
ac(i)= (f*cos(x(i)))/((sin(pi/6)*cos(x(i)))+(cos(pi/6)*sin(x(i))))
fprintf('Force of AC is %7.2f\n',ac)
bc= ((ac*cos(pi/6))/cos(x(i)))
fprintf('Force of BC is %7.2f\n',bc)
end
plot(x,ac)

更多回答(1 个)

Sriram Tadavarty
Sriram Tadavarty 2020-3-24
Hi Jose,
This code need not require a for loop. The following can be done to get the same result:
clc
f=196.2;
fi=0; finc= pi/180; ff=pi/4
x=0:pi/180:pi/4;
ac= (f*cos(x))./((sin(pi/6)*cos(x))+(cos(pi/6)*sin(x)))
fprintf('Force of AC is %7.2f\n',ac)
bc= ((ac*cos(pi/6))./cos(x))
fprintf('Force of BC is %7.2f\n',bc)
hold on;
plot(x,ac)
Hope this helps.
Regards,
Sriram

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by