here is the Question that I want to Answre:
(Write a function called tri_area that returns the area of a triangle with base b and height h, where b and h are input arguments of the function in that order.)
function area = tri_area(b,h)
area = b*h;
end

2 Comments

function area = tri_area(b, h)
area = (0.5*b*h)
end
the area of a triangle is 0.5*b*h not b*h

Sign in to comment.

 Accepted Answer

More Answers (3)

Stephan
Stephan on 25 Feb 2019
You calculate the area of a rectangle. Think about the formula of triangle area...
function area = tri_area(b,h)
tri_area=0.5*b*h
end
function area= tri_area(b,h)
tri_area(b,h)= (0.5)*(b)*(h)
area= tri_area(b,h)
end

1 Comment

If b and h happen to be positive integers, then the assignment on the first line would work, creating an array that is b rows high and h columns, with all the values set to 0 except for the very bottom corner that would be set to (0.5)*(b)*(h) . You would then retrieve that location to create the output. This seems a bit of a waste to create that array.
If either b or h is not a positive integer, such as if b were 2.5 and h were 5, then the assignment on your second line would fail.
You have confused arrays and formulas. In MATLAB, you create formulas using @, such as
function area= tri_area(b,h)
TA = @(b,h) (0.5)*(b)*(h);
area = TA(b,h);
end

Sign in to comment.

Categories

Find more on Deep Learning Toolbox in Help Center and File Exchange

Products

Release

R2018b

Tags

Community Treasure Hunt

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

Start Hunting!