Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

To resolve issues starting MATLAB on Mac OS X 10.10 (Yosemite) visit: http://www.mathworks.com/matlabcentral/answers/159016

Not sure what to do on this question.

Asked by Brian on 26 Mar 2013
write a matlab script that allowss the user to plot one to plot one of the following functions over the range 0 less than or equal to x equal to or less than 10. x<=x<=10
f1(x)=cos(x)
f2(x)=sin(x)
f3(x)=(-x^2)+10x
Using the input command, your script should ask the user to select which function to plot. Then , the script should generate the desired plot. 

I'm not really sure what i'm supposed to do for this problem, the things covered in the book seem a bit vague to me.

0 Comments

Brian

Products

No products are associated with this question.

3 Answers

Answer by Walter Roberson on 26 Mar 2013

was the input 1? If so then plot cos(x). Wss the input 2? If so then plot sin(x). And so on.

2 Comments

Brian on 26 Mar 2013

no its function 1, function 2, function 3. The numbers aren't inputs.

Walter Roberson on 26 Mar 2013

"your script shuld ask the user to select which function to plot". That does not say that you must allow the user to use a string answer to make the selection.

Walter Roberson
Answer by Image Analyst on 26 Mar 2013
Edited by Image Analyst on 26 Mar 2013

I would use the menu function:

button = menu('Select one',...
'f1(x)=cos(x)',...
'f2(x)=sin(x)',...
'f3(x)=(-x^2)+10x')
if button == 1
	% Plot function 1
elseif button == 2
	% Plot function 2
else
	% Plot function 3
end

But if it requires the input() function, there are examples in the help for that, which you should easily be able to adapt.

0 Comments

Image Analyst
Answer by Youssef KHMOU on 26 Mar 2013

hi, try his basic sol :

 % SCRIPT
 x=0:0.1:10;
 fprintf(' SELECT A FUNCTION TO PLOT :\n case1 : cos(x) \n case(2) sin(x) .\n  case (3) : -x^2+10x :\n');
 a=input('');
 if a==1
    figure, plot(x,cos(x));
 elseif a==2
    figure, plot(x,sin(x));
 elseif a==3
    figure, plot(x,-x.^2+10*x);
 end

2 Comments

Youssef KHMOU on 26 Mar 2013

you should add another input for resolution or step dx , and also the lower and upper limits , its easy i think .

 fprintf(' enter step dx \n');
 .....
 dx=input('');
 .............
Image Analyst on 26 Mar 2013

You don't need the figure command - plot will automatically create a figure. And usually we don't do the entire homework for them - we leave at least something for them to do.

Youssef  KHMOU

Contact us