当前位置: 首页 > ds >正文

matlab学习之旅

一、矩阵操作

  1. 创建一个 3×3 的随机矩阵 A,元素范围为 [0, 10](包含 0 和 10)。
  2. 计算矩阵 A 的转置矩阵,并存储到矩阵 B 中。
  3. 求矩阵 A 的行列式值,并判断矩阵 A 是否可逆(行列式不为零则可逆)。
  4. 若矩阵 A 可逆,计算其逆矩阵并存储到矩阵 C 中;若不可逆,输出提示信息“矩阵 A 不可逆”。

代码

% 1. 创建一个3x3的随机矩阵A,元素范围为[0, 10]
A = randi([0, 10], 3, 3);% 显示矩阵A
disp('矩阵A:');
disp(A);% 2. 计算矩阵A的转置矩阵,并存储到矩阵B中
B = A';
disp('矩阵A的转置矩阵B:');
disp(B);% 3. 求矩阵A的行列式值,并判断矩阵A是否可逆
detA = det(A);
disp(['矩阵A的行列式值: ', num2str(detA)]);if detA == 0disp('矩阵A不可逆');
elsedisp('矩阵A可逆');% 4. 若矩阵A可逆,计算其逆矩阵并存储到矩阵C中C = inv(A);disp('矩阵A的逆矩阵C:');disp(C);
end

运行结果
在这里插入图片描述

二、多项式计算

  1. 定义一个多项式 p(x)=2x4+3x3−5x2+7x−1。
  2. 计算多项式在 x=2 处的值。
  3. 求多项式的导数,并存储为多项式q(x)。
  4. 求多项式 p(x) 的根(可能包含复数根)。

代码

% 定义多项式 p(x) = 2x^4 + 3x^3 - 5x^2 + 7x - 1
p = [2 3 -5 7 -1]; % 多项式系数,按降幂排列% 1. 计算多项式在 x=2 处的值
x = 2;
p_value_at_2 = polyval(p, x);
fprintf('p(2) = %f\n', p_value_at_2);% 2. 求多项式的导数,存储为 q(x)
q = polyder(p); % 对多项式 p 求导
disp('导数多项式 q(x) 的系数:');
disp(q);% 3. 求多项式 p(x) 的根(可能包含复数根)
roots_p = roots(p);
disp('多项式 p(x) 的根:');
disp(roots_p);

运行结果
在这里插入图片描述

三、函数、循环和条件语句

  1. 编写一个函数 sumSquares(n),输入参数为正整数 n,输出从 1 到 n 的所有整数的平方和,即 12+22+…+n2。
  2. 编写一个脚本,使用循环结构(for 或 while)和条件语句,实现以下功能:
     输入一个正整数 m。
     判断 m 是否为素数。如果是素数,输出“m 是素数”;否则,输出“m 不是素数”。
     如果 m 不是素数,找出其所有正因数(不包括 1 和 m 本身)并输出。
    代码1
function result = SumSquares(n)% 检查输入是否为正整数if ~isscalar(n) || n <= 0 || mod(n, 1) ~= 0error('输入必须是正整数');end% 计算从1到n的所有整数的平方和result = sum((1:n).^2);
end

运行结果1
在这里插入图片描述

代码2

% 输入一个正整数 m
m = input('请输入一个正整数: ');% 检查输入是否为正整数
if ~isscalar(m) || m <= 0 || mod(m, 1) ~= 0error('输入必须是正整数');
end% 定义一个函数来判断是否为素数
function isPrime = checkPrime(num)if num <= 1isPrime = false;return;endfor i = 2:sqrt(num)if mod(num, i) == 0isPrime = false;return;endendisPrime = true;
end% 判断 m 是否为素数
if checkPrime(m)disp(['m 是素数']);
elsedisp(['m 不是素数']);% 找出所有正因数(不包括 1 和 m 本身)factors = [];for i = 2:m-1if mod(m, i) == 0factors = [factors, i];endendif ~isempty(factors)disp('m 的正因数有:');disp(factors);elsedisp('m 没有其他正因数');end
end

运行结果2
在这里插入图片描述

http://www.xdnf.cn/news/3838.html

相关文章:

  • 数据结构---
  • 实战项目:基于控制台与数据库的图书管理系统开发指南
  • C语言中memmove和memcpy
  • 智慧校园整体解决方案-5PPT(65页)
  • python中的异常处理
  • 【CF】Day50——Codeforces Round 960 (Div. 2) BCD
  • 数学实验Matlab
  • 多把锁以及线程死锁问题
  • Linux-GRUB全面指南
  • CUDA输出“hello world”
  • 多数据源动态切换
  • 算法每日一题 | 入门-顺序结构-数字反转
  • (38)VTK C++开发示例 ---纹理裁剪
  • C++负载均衡远程调用学习之异步消息任务功能与连接属性
  • CVPR2021 | 重新思考视觉Transformer中的自注意力机制
  • Java学习手册:Spring 生态其他组件介绍
  • 单细胞测序试验设计赏析(一)
  • AWS在跨境电商中的全场景实践与未来生态构建
  • D. 例题3.2.2 整数划分问题
  • 二种MVCC对比分析
  • 学习黑客风险Risk
  • iOS启动优化:从原理到实践
  • 2025年渗透测试面试题总结-拷打题库35(题目+回答)
  • 【C++】:C++17新特性
  • Vivado FPGA 开发 | 创建工程 / 仿真 / 烧录
  • 2845. 统计趣味子数组的数目
  • 【LLaMA-Factory实战】Web UI快速上手:可视化大模型微调全流程
  • The Sims 4 模拟人生 4 [DLC 解锁] [Steam Epic EA] [Windows SteamOS]
  • 《操作系统真象还原》第十二章(2)——进一步完善内核
  • 影刀RPA中新增自己的自定义指令