# Solve a simple problem in MATLAB

1. Oct 30, 2014

### StephvsEinst

1. The problem statement, all variables and given/known data
H
ow to create a function to determine the area of a polynomial that has N vertexes in MATLAB?

2. Relevant equations
p = input('Introduce the number of vertexes of the polynomial:')
n=p-2;

The polynomial can be devided by N-2 triangles and the area of each triangle is given by A=(1/2)*det(B) where B=[x1 x2 x3 .... xn; y1 y2 y3 .... yn; 1 1 1 1 1 ...... 1(last row is filled with n ones)]

3. The attempt at a solution
p = input('Introduce the number of vertexes of the polynomial:')
n=p-2;
if n<3:
fprintf('error')
else
(...) - I tried 'if cicles' and sums but I don't know know how to ask for all x and y of the polynomial vertexes (because the size of the matrix varies with the number of vertexes of the polynomial).

Would apreciate any kind of help :D

2. Oct 30, 2014

### StephvsEinst

You have to ask all the coordinates of the vertexes

3. Oct 30, 2014

### StephvsEinst

Already solved it:

function p = area_polinomio(N)
i=1;
area = 0;
A = [0,0,0;0,0,0;0,0,0];
if N < 3
warning('pontos insuficientes')
return
else
a = [input('introduza a abcissa do primeiro ponto: '); input('\n introduza a ordenada do primeiro ponto: '); 1];
for i = 1 : N-1
b = [input('\n introduza a abcissa do ponto seguinte: '); input('\n introduza a ordenada do ponto seguinte: '); 1];
if i == 1
A = [a, b];
end
if i == 2
A = [A, b];
area = area + (1/2)*det(A);
end
if i > 2
A = A(:,[1:1,3,3:2,2,4:end]);
A = A(1:3,1:2);
A = [A, b];
area = area + (1/2)*det(A);
end

i = i+1;
end
end
%A

Thanks.

4. Oct 31, 2014

### Staff: Mentor

The word you're searching for is polygon, a two-dimensional figure with three or more straight sides that intersect at the vertices of the polygon. Triangles, rectangles, and hexagons are examples of polygons.

A polynomial is an expression made up of sums of integer powers of the variable. For example, f(x) = 2x + 3, g(x) = x2 - 3x + 2, and h(x) = x4 - 1 are polynomial functions of degree 1, 2, and 4 respectively.

5. Oct 31, 2014

### StephvsEinst

LOOOL. That made me laugh xD
A silly misake made by me. Acually when I was solving this I named the function area_polynomial and not area_polygon until it was time to run it, then I changed the name. Was completely focused on the exercise xD

6. Oct 31, 2014

### Staff: Mentor

Are you from Portugal or Brazil? I'm just curious...

7. Oct 31, 2014

### StephvsEinst

Portugal :)

Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Have something to add?
Draft saved Draft deleted