# Writing Functions that take inputs?

10 views (last 30 days)

Show older comments

Need help getting this function to execute.

So far I have:

r = input('What is the radius of the circle?')

x = input('What is the X - coordinate for the center of the circle?')

y = input('What is the Y - coordinate for the center of the circle?')

c = 'k';

function circleplot(x,y,r,c)

hold on

th = 0:pi/50:2*pi;

x_circle = r * cos(th) + x;

y_circle = r * sin(th) + y;

plot(x_circle, y_circle);

fill(x_circle, y_circle, c)

plot(x, y, 'kp', 'MarkerSize',15, 'MarkerFaceColor','k')

axis equal

end

When I run the code nothing happens expect the prompts asking me for data. Any advice?

##### 0 Comments

### Answers (2)

Stephen
on 30 Sep 2020

Edited: Stephen
on 30 Sep 2020

"When I run the code nothing happens expect the prompts asking me for data."

You defined a function in a script (which is permitted syntax since R2016b) but you do not actually call the function anywhere. If you do not call a function it does not run: https://www.mathworks.com/help/matlab/learn_matlab/calling-functions.html

Here are two simple solutions to fix your code:

One: actually call the function in your script:

r = input('What is the radius of the circle?')

x = input('What is the X - coordinate for the center of the circle?')

y = input('What is the Y - coordinate for the center of the circle?')

c = 'k';

circleplot(x,y,r,c) % <- call it here !

function circleplot(x,y,r,c)

...

end

Two: get rid of the function, turn it into a simple script:

r = input('What is the radius of the circle?')

x = input('What is the X - coordinate for the center of the circle?')

y = input('What is the Y - coordinate for the center of the circle?')

c = 'k';

hold on

th = 0:pi/50:2*pi;

x_circle = r * cos(th) + x;

y_circle = r * sin(th) + y;

plot(x_circle, y_circle);

fill(x_circle, y_circle, c)

plot(x, y, 'kp', 'MarkerSize',15, 'MarkerFaceColor','k')

axis equal

##### 0 Comments

Steven Lord
on 30 Sep 2020

##### 0 Comments

### See Also

### Community Treasure Hunt

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

Start Hunting!