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

 採用された回答

Jos (10584)
Jos (10584) 2013 年 9 月 20 日
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 件のコメント

pitchaorn
pitchaorn 2013 年 9 月 20 日
Thank you very much.
Jos (10584)
Jos (10584) 2013 年 9 月 20 日
Note that this does not use polynomials, so it is not a real answer to your (homework?) question ...
pitchaorn
pitchaorn 2013 年 9 月 20 日
Yes, I think my teacher want my answer make from polynomials.
pitchaorn
pitchaorn 2013 年 9 月 23 日
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.

サインインしてコメントする。

その他の回答 (3 件)

Image Analyst
Image Analyst 2013 年 9 月 20 日

1 投票

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 件のコメント

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]);
pitchaorn
pitchaorn 2013 年 9 月 23 日
Thank you for answer

サインインしてコメントする。

Matt J
Matt J 2013 年 9 月 20 日
編集済み: Matt J 2013 年 9 月 20 日
Hint: What if you solved the polynomial equation
x*(x+2)*(x+4)*(x+6)=13440
using MATLAB's commands POLY and ROOTS?

2 件のコメント

Matt J
Matt J 2013 年 9 月 20 日
編集済み: Matt J 2013 年 9 月 20 日
If you follow this approach, you will also find that an additional solution is [-14 -12 -10 -8], which might earn you bonus points!
pitchaorn
pitchaorn 2013 年 9 月 23 日
Yes, i find soulution because your answer.Thank you for answer

サインインしてコメントする。

Sean de Wolski
Sean de Wolski 2013 年 9 月 20 日
Obligatory one-liner:
vals = 2*find(prod(bsxfun(@plus,(2:2:13440).',0:2:6),2)==13440)+[0:2:6]

カテゴリ

ヘルプ センター および File ExchangeMathematics についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by