MATLAB Answers


How to do that.the product of four consecutive even integers is 13440. Using Matlab?

Asked by pitchaorn
on 20 Sep 2013

the product of four consecutive even integers is 13440. Using Matlab's build-in function for operations with polynomials, determine the four integers.

I don't know how to do that

answer is 8 10 12 14

help me please


Log in to comment.


No products are associated with this question.

4 Answers

Answer by Jos (10584)
on 20 Sep 2013
 Accepted answer

One approach is to use brute force:

N = 13440 ;
for k = 2:N
    v = k + [0:2:6] ;
    p = prod(v) ;    
    if prod(v)==N,
        disp('N is the product of :') ;
        disp (v)
    elseif prod(v) > N
        disp('There is no solution')

There are many optimalisations that can be made ...


Note that this does not use polynomials, so it is not a real answer to your (homework?) question ...

Yes, I think my teacher want my answer make from polynomials.

Your answer is correct so thank you. But I change v to v=x*(x+2)*(x+4)*(x+6) and if v==N. My teacher told me "x*(x+2)*(x+4)*(x+6)" is polynomials.

Log in to comment.

Answer by Image Analyst
on 20 Sep 2013

y = x*(x+2)*(x+4)*(x+6)

= x*(x+2)*(x^2+10X+24)

= x * ( x^3+10x^2+24x + 2x^2+20X+48)

= x^4 + .... and so on.

Then subtract 13440 and use fzero to determine the root. Perhaps that's what he meant.


Visualizing it helps:

x = -20:10;
y = x.*(x+2).*(x+4).*(x+6);
plot(x,y, 'bs-', 'LineWidth', 3);
xl = xlim;
% Plot a horizontal line at y = 13440
line([xl(1), xl(2)], [13440, 13440], ...
'Color', [1,0,0], 'LineWidth', 3);
grid on;
% Enlarge figure to full screen.
set(gcf, 'Units', 'Normalized', 'OuterPosition', [0 0 1 1]);

Log in to comment.

Answer by Matt J
on 20 Sep 2013
Edited by Matt J
on 20 Sep 2013

Hint: What if you solved the polynomial equation


using MATLAB's commands POLY and ROOTS?


If you follow this approach, you will also find that an additional solution is [-14 -12 -10 -8], which might earn you bonus points!

Yes, i find soulution because your answer.Thank you for answer

Log in to comment.

Answer by Sean de Wolski
on 20 Sep 2013

Obligatory one-liner:

vals = 2*find(prod(bsxfun(@plus,(2:2:13440).',0:2:6),2)==13440)+[0:2:6]

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

MATLAB Academy

New to MATLAB?

Learn MATLAB today!