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

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

 Réponse acceptée

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)
break
elseif prod(v) > N
disp('There is no solution')
break
end
end
There are many optimalisations that can be made ...

4 commentaires

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.

Connectez-vous pour commenter.

Plus de réponses (3)

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.

2 commentaires

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]);

Connectez-vous pour commenter.

Matt J
Matt J le 20 Sep 2013
Modifié(e) : Matt J le 20 Sep 2013
Hint: What if you solved the polynomial equation
x*(x+2)*(x+4)*(x+6)=13440
using MATLAB's commands POLY and ROOTS?

2 commentaires

Matt J
Matt J le 20 Sep 2013
Modifié(e) : Matt J le 20 Sep 2013
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

Connectez-vous pour commenter.

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

Catégories

En savoir plus sur Mathematics dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by