Use a for loop to evaluate

5 次查看(过去 30 天)
Robert
Robert 2013-2-9
use a for loop to evaluate the function y = {exp(x+1) if x<-1, 2+cos(pi*x) if -1<=x<5, 10*(x-5)+1 if x>=5}
e^(x+1) if x<-1
y = {2+cos(pi*x) if -1<=x<5
10(x-5)+1 if x>=5
I am having trouble correctly setting up the for loop to store the values because the final product of this, is to plot the function y(x).
  2 个评论
Robert
Robert 2013-2-9
I forgot the range for the loop which is -2 to 6 increasing by 1 each time. Sorry!
Azzi Abdelmalek
Azzi Abdelmalek 2013-2-9
What have you done so far?

请先登录,再进行评论。

回答(2 个)

Ahmed
Ahmed 2013-2-9
according to my little knowledge if you need to store this value for every loop in a Matrix where every inner for loop represent a row you can do this
if
y=zeros(9)
x=input('x=')
for i1=-2:6
y(i1)=.....
end
then y will be an array whose values are stored in the above Zero Matrix
Does this help ?
  1 个评论
Image Analyst
Image Analyst 2013-2-9
编辑:Image Analyst 2013-2-9
You cannot have zero or negative indexes, like -2 or -1 or 0. You can either add 3 to i1, or use a counter like I did in my Answer.

请先登录,再进行评论。


Image Analyst
Image Analyst 2013-2-9
编辑:Image Analyst 2013-2-9
Try something like this:
index = 1;
for x = -2 : 1 : 6
if x < -1
% Insert code/formula here
y(index) = .........whatever.....
else if x >= -1 && x < 5
% Insert other code/formula here
else
% x >= 5
% Insert code/formula here
end
index = index + 1;
end
% Plot it.
plot(x,y, 'bo-', 'LineWidth', 3, 'MarkerSize', 15);
title('Plot of y vs. x', 'FontSize', 25);
  2 个评论
Robert
Robert 2013-2-10
Thank you. I will ask if you could generically go where the y(index) first appears. Basically what would the "whatever" be? I'm still very new to Matlab
Image Analyst
Image Analyst 2013-2-10
You insert the appropriate formula from your question:
y = e^(x+1) if x<-1
y = {2+cos(pi*x) if -1<=x<5
y = 10(x-5)+1 if x>=5

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by