(2019年2月19日注:Matlab这门课是在我大四上学期经历的,那时候开这篇文章是为了记录学习Matlab的时候遇到的坑,所以将所有的作业题合并到一篇文章中)

  1.创建一个10*10的矩阵,矩阵所有对角元素为1,其余元素为10~20之间(包括10和20)的均匀分布随机数,并得出该矩阵中大于13且小于18的元素个数,同时求得这些元素的平均数。

A=unifrnd(10,20,10,10); %   产生一个10*10的由10到20均匀分布的矩阵
% eye()产生了一个单位对角矩阵
% logical将1的数值转成矩阵的位置
% 带上A以后就可以确定是哪些元素要赋值为1
A(logical(eye(size(A))))=1;
% 找符合条件的元素,并返回元素的索引
B=find(A>13&A<18);
% 计算长度
C=length(B);
% 求均值
D=mean(C);

  2. 用mesh函数做出函数$f(x,y)=-[xsin(9πy)+ycos(25πx)+20]$在$x^2+y^2≤10$的图像。

%   定义三个符号变量
syms x y t;
% 给定t的范围,数学上类似于转成极坐标来计算
t=linspace(-1,1);
x=sqrt(10)*cos(t);
y=sqrt(10)*sin(t);
% 在范围定好以后给定变量
[xx,yy]=meshgrid(x,y);
% 函数表达式
f_xy=-1*(xx*sin(9*pi*yy)+yy*cos(25*pi*xx)+20);
% 初级的不能再初级的画图...
mesh(xx,yy,f_xy);

  3. 生成30阶的希尔伯特矩阵A,并剔除矩阵的第3到10行,剔除矩阵的4到13列,得到矩阵B,再逆序选取矩阵B的1到10行,顺序选取矩阵的2到11列,得到新矩阵C。(hilb(n))

%	生成一个30阶的希尔伯特矩阵
A=hilb(30);
% 删除3到10行
A(3:10,:)=[];
% 再删除4到13列
A(:,4:13)=[];
% 得到的新矩阵后,逆序索引,从第10到第1行,步长为-1,从2到11列,默认步长为1.
C=A(10:-1:1,2:11);

  4. 解常微分方程组$$(1)dx/dt+2x-dy/dt=10cos(t),x(0)=2;$$ $$(2)dx/dt+dy/dt+2y=4e^(-2t),y(0)=2$$并作出$y-x$(横坐标为x,纵坐标为y)在$t∈(0,10)$之间的图像(时间间距尽量小)

%	定义三个符号变量
syms x y t;
% 解微分方程组
[x,y]=dsolve('Dx+2*x-Dy=10*cos(t)','Dx+Dy+2*y=4*exp(-2*t)','x(0)=2','y(0)=2');
% 将得到的通解里面将符号变成可用于计算的数字
X=subs(x,'t',0:0.1:10);
Y=subs(y,'t',0:0.1:10);
% 将符号变量变成数值变量
X=double(X);
Y=double(Y);
% 初级的不能在初级的画图...
plot(X,Y);

  5. 解矩阵方程组$H*X=B$,H为100阶希尔伯特矩阵,$X=(x1,x2,x3,……,x100)^T,B=(1,2,3,……,100)^T$

%	定义一个100阶的希尔伯特矩阵
H=hilb(100);
% 定义一个100*1的列向量
B=ones(100,1);
% 由于直接使用int(H)会引入奇异矩阵的误差,因此matlab里面有一个专门的命令invhilb()
% 专门解决希尔伯特矩阵求逆的问题。
X=invhilb(100)*B;

  

Matlab系列作业的更多相关文章

  1. ROS与Matlab系列:一个简单的运动控制

    ROS与Matlab系列:一个简单的运动控制 转自:http://blog.exbot.net/archives/2594 Matlab拥有强大的数据处理.可视化绘图能力以及众多成熟的算法函数,非常适 ...

  2. 面向对象JML系列作业总结

    面向对象JML系列作业总结 一.综述 本单元作业,由简到难地迭代式实现了三种JML需求,主要学习了面向规格的编程方法. 第一次:实现Path类和PathContainer类 第二次:继承PathCon ...

  3. OO_JAVA_JML系列作业_单元总结

    OO_JAVA_JML系列作业_单元总结 (1)梳理JML语言的理论基础.应用工具链情况 简单梳理 以下三者是jml规格里的核心,对一个方法功能和属性的限制: requires子句:规定方法的前置条件 ...

  4. 【matlab系列汇总】小白博主的matlab学习实战快速进阶之路(持续更新)

    我把之前在学习和工作中使用matlab的技巧和使用教程等相关整理到这里,方便查阅学习,如果能帮助到您,请帮忙点个赞: MATLAB可以进行矩阵运算.绘制函数和数据.实现算法.创建用户界面.连接其他编程 ...

  5. C++系列作业

    1.编写一个完整的程序,实现功能:向用户提问“现在正在下雨吗?”,提示用户输入Y或N.若输入为Y,显示“现在正在下雨.”:若输入为N,显示“现在没有下雨”:否则继续提问“现在正在下雨吗?” #incl ...

  6. OO第二单元作业小结

    前言 转眼已是第九周,第二单元的电梯系列作业已经结束,终于体验了一番多线程电梯之旅. 第一次作业是单电梯的傻瓜调度,虽然是第一次写多线程,但在课程PPT的指引下,写起来还是非常容易:第二次作业是单电梯 ...

  7. 我永远爱着OOP——第二单元作业总结

    第二单元的电梯真是愉♂快呢,多线程编程作为java编程OOP中的重要组成部分,通过这一个单元的学习,我也是有了很多全新的认识 那么下面就先例行一下公事 三次作业分析 第五次作业 设计分析 实现的电梯是 ...

  8. 第二次oo博客作业--多线程电梯

    这次的系列作业是写一个电梯调度,主要目的是让我们熟悉多线程. 第一次作业是一个傻瓜电梯的调度问题,要求也很简单,即每次接一个人就行了.我只用了两个线程,一个是输入线程,一个是电梯线程,输入线程负责从标 ...

  9. 第5-7次OO作业总结分析

    (1)从多线程的协同和同步控制方面,分析和总结自己三次作业来的设计策略及其变化. 第五次作业 第五次作业是对多线程的初步探索,所以对于多线程的基本书写机制的认识比较多.本次作业难点在于了解多线程的运作 ...

随机推荐

  1. Spring 基于xml配置方式的事务(14)

    参考前面的声明式事务的例子:http://www.cnblogs.com/caoyc/p/5632198.html 我们做了相应的修改.在dao中和service中的各个类中,去掉所有注解标签.然后为 ...

  2. C#& Screen 类&(&多&屏&幕&开&发)

    原文:C#& Screen 类&(&多&屏&幕&开&发) Screen 类 下面的代码示例演示如何使用 Screen 类的各种方法和属性. 该示 ...

  3. 一点响应式Web设计与实现思路

    摘要: 是否还在为你的应用程序适配PC端,移动端,平板而苦苦思索呢,是否在寻找如何一套代码适配多终端方式呢,是否希望快速上手实现你的跨终端应用程序呢,是的话,那就看过来吧,本文阐述响应式UI设计相关理 ...

  4. HTML_标签

    <!--HTML:1.概念:最基础的网页开发语言Hyper Text Markup Language 超文本标记语言超文本:超文本是用超链接的方法,将各种不同空间的文字信息组织在一起的网状文本. ...

  5. webservice - 使用JAX-WS注解的方式快速搭建服务端和客户端

    1.Define the interface import javax.jws.WebMethod; import javax.jws.WebParam; import javax.jws.WebRe ...

  6. mysql tar安装模式

    mysql解压版安装过程,之前安装mysql一直用linux yum和rpm方式.今天试了下tar包方式有点麻烦记录下1.安装lrzsz-0.12.20-27.1.el6.x86_64.rpm方便操作 ...

  7. mysql 04_章基本查询

    当我们使用select查询语句向数据库发送一个查询请求,数据库会根据请求执行查询,并返回一个虚拟表,其数据来源于真实的数据表. 一.查询所有数据:所有的字段.所有的记录 格式:SELECT * FRO ...

  8. 2018-8-10-WPF-使用-Direct2D1-画图-绘制基本图形

    title author date CreateTime categories WPF 使用 Direct2D1 画图 绘制基本图形 lindexi 2018-08-10 19:16:53 +0800 ...

  9. mysql 复制原理详解

    http://www.cnblogs.com/kristain/articles/4142970.html

  10. sql (4) key and Join

    新建表: "Persons" 表:Id_P LastName FirstName Address City1 Adams John Oxford Street London2 Bu ...