第一次作业 ex2

习题一 第5题

function cos_num = func_ex5(x, num_terms)

    % 利用泰勒展开计算余弦函数的值

    % 输入: x - 计算余弦值的角度,num_terms - 泰勒展开的项数

    % 输出: cos1 - 余弦函数的近似值

    cos_num = 0;

    for n = 0:num_terms-1

        term = ((-1)^n * x^(2*n)) / factorial(2*n);

        cos_num = cos_num + term;

    end

end


% 计算 cos(1) 的值,使用 6 项

x = 1;

num_terms = 6;

cos_num = cosine(x, num_terms);

% 输出结果并保留 4 位有效数字

fprintf('cos(1) 近似值为: %.4f\n', cos_num);

习题一 第6题

% 计算 7^(1/2)

    a_sqrt = 3;

    b_sqrt = 7 - a_sqrt^2;

    sqrt_7 = a_sqrt + b_sqrt / (2 * a_sqrt);


    % 计算 7^(1/3)

    a_cube = 2;

    b_cube = 7 - a_cube^3;

    cube_7 = a_cube + b_cube / (3 * a_cube^2);


    % 输出结果并保留 4 位有效数字

    fprintf('7^(1/2) 近似值为: %.4f\n', sqrt_7);

    fprintf('7^(1/3) 近似值为: %.4f\n', cube_7);

数值实验一  第6题

function B = func_lab6(A)

    % 对矩阵 A 的对角元素按绝对值从大到小排列,进行行列相同的置换并输出处理后的矩阵。

    % 输入:

    %  A: 对称矩阵 (方阵)

    % 输出:

    %  B: 经过置换后的矩阵

    % 确保输入的矩阵是一个方阵

    [m, n] = size(A);

    if m ~= n

        error('输入矩阵必须是方阵');

    end


    % 获取矩阵的对角元素

    diag_A = diag(A);


    % 按对角元素的绝对值从大到小排序,返回排序后的索引

    [~, order] = sort(abs(diag_A), 'descend');


    % 根据排序后的索引进行矩阵行列置换

    A_1 = A(order,:);

    B = A_1(:, order);

end

数值实验一  第9题

% 输入参数

a = 2; % 例:a 的值

b = 1; % 例:b 的值

c = 3; % 例:c 的值

% 网格生成

[x, y] = meshgrid(linspace(-a*1.5, a*1.5, 100), linspace(-b*1.5, b*1.5, 100));

value = x.^2/a^2 + y.^2/b^2 - 1;

% 计算 z 的值

% 仅计算有效区域的 z 值,避免复数

valid = value >= 0;

z_pos(valid) = sqrt(value(valid)) * c;

z_neg(valid) = -sqrt(value(valid)) * c;

% 绘制图像

figure;

hold on;

% 绘制上表面

surf(x, y, z_pos, 'FaceAlpha', 0.5, 'EdgeColor', 'none');

% 绘制下表面

surf(x, y, z_neg, 'FaceAlpha', 0.5, 'EdgeColor', 'none');

% 图像设置

xlabel('x');

ylabel('y');

zlabel('z');

title('单叶双曲面 x^2/a^2 + y^2/b^2 - z^2/c^2 = 1');

axis equal;

grid on;

hold off;

自制题目 题目一

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容