南京邮电大学数学实验A 作业5 函数与方程 答案 | 《MATLAB数学实验》第三版 第四章 课后习题答案

该博客主要围绕MATLAB课本习题展开,包含多项式求根、方程求解、非线性方程组求解、函数极值求解等内容,还涉及房产贷款计算、几何问题计算等实际应用,通过代码给出了各习题的求解结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

若要获得更好的阅读体验,请前往 链接

求点赞 求点赞 求点赞

1(课本习题1)

求下列多项式的所有根,并验算:

(1) x 2 + x + 1 x^{2} + x + 1 x2+x+1;

(2) 3 x 5 − 4 x 3 + 2 x − 1 3x^{5} - 4x^{3} + 2x - 1 3x54x3+2x1;

(3) 5 x 23 − 6 x 7 + 8 x 6 − 5 x 2 5x^{23} - 6x^{7} + 8x^{6} - 5x^{2} 5x236x7+8x65x2​;

(4) ( 2 x + 3 ) 3 − 4 (2x + 3)^{3} - 4 (2x+3)34​ (提示: 先用conv展开)

代码:

function verify_roots(p, r, tol)
    % p: 多项式的系数向量,r: roots 函数的输出
    % tol: 误差容限
    all_passed = true;
    for i = 1:length(r)
        if abs(polyval(p, r(i))) > tol
            fprintf('根 %f + %fi 可能不准确\n', real(r(i)), imag(r(i)));
            all_passed = false;
        end
    end
    if all_passed
        fprintf('所有的根都已经通过验证,求根正确。\n');
    end
end

% 1.1
tol = 1e-6; % 定义容差
p = [1 1 1];
r = roots(p)
verify_roots(p, r, tol)
% 1.2
p = [3 0 -4 0 2 -1];
r = roots(p)
verify_roots(p, r, tol)
% 1.3
p = zeros(1,24);
p([1 17 18 22]) = [5 -6 8 -5];
r = roots(p)
verify_roots(p, r, tol)
% 1.4
p1 = [2 3];
p2 = conv(p1,p1);
p3 = conv(p1,p2);
p3(end) = p3(end)-4;
r = roots(p3)
verify_roots(p3, r, tol)

输出:

ans =

-0.5000 + 0.8660i

-0.5000 - 0.8660i

所有的根都已经通过验证,求根正确。

ans =

-0.9479 + 0.3845i

-0.9479 - 0.3845i

1.0000 + 0.0000i

0.4479 + 0.3435i

0.4479 - 0.3435i

所有的根都已经通过验证,求根正确。

ans =

0.0000 + 0.0000i

0.0000 + 0.0000i

0.9768 + 0.0000i

0.9388 + 0.2682i

0.9388 - 0.2682i

0.8554 + 0.5363i

0.8554 - 0.5363i

0.6615 + 0.8064i

0.6615 - 0.8064i

0.3516 + 0.9878i

0.3516 - 0.9878i

-0.0345 + 1.0150i

-0.0345 - 1.0150i

-0.4609 + 0.9458i

-0.4609 - 0.9458i

-0.1150 + 0.8340i

-0.1150 - 0.8340i

-0.7821 + 0.7376i

-0.7821 - 0.7376i

-0.9859 + 0.4106i

-0.9859 - 0.4106i

-1.0416 + 0.0000i

-0.7927 + 0.0000i

所有的根都已经通过验证,求根正确。

ans =

-1.8969 + 0.6874i

-1.8969 - 0.6874i

-0.7063 + 0.0000i

所有的根都已经通过验证,求根正确。

2(课本习题2)

求方程 x ln ⁡ ( x 2 − 1 + x ) − x 2 − 1 − 0.5 x = 0 x\ln{\left( \sqrt{x^{2} - 1} + x \right) - \sqrt{x^{2} - 1} - 0.5x = 0} xln(x21 +x)x21 0.5x=0​​的正根。

代码:

Fun = @(x) x*log(sqrt(x^2-1)+x)-sqrt(x^2-1)-0.5*x;
% 使用fzero函数找到函数的零点
fzero(Fun,2)

输出:

ans = 2.1155

3(课本习题4)

(超越方程)超越方程的解有时是很复杂的,作出 f ( x ) = x sin ⁡ 1 x f(x) = x\sin\frac{1}{x} f(x)=xsinx1在[-0.1,
0.1]内的图,可见x=0附近 f ( x ) = 0 f(x) = 0 f(x)=0​有无穷多个解,并设法求出它们的近似解,是计算结果误差不超过0.01.

代码:

Fun = @(x) x.*sin(1/x);
% 使用fplot函数绘制函数图像
fplot(Fun, [-0.1 0.1]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值