第一部分 MATLAB运算基础
1. 先求下列表达式的值,然后显示MATLAB工作空间的使用情况并保存全部变量。
2sin850(1) z1? 21?e(2) z2?ln(x?1?x2),其中x??121?2i??2 ?5???0.45e0.3a?e?0.3a0.3?asin(a?0.3)?ln,a??3.0,?2.9,?,2.9,3.0 (3) z3?22?t20?t?1?1?t?2,其中t=0:0.5:2.5 (4) z4??t2?1?t2?2t?12?t?3?
2. 已知:
?1234?4??13?1??,B??203?A??34787???????3657???3?27??
求下列表达式的值:
(1) A+6*B和A-B+I(其中I为单位矩阵) (2) A*B和A.*B (3) A^3和A.^3 (4) A/B及B\\A
(5) [A,B]和[A([1,3],:);B^2]
3. 设有矩阵A和B
?1?6?A??11??16??215??3?1778910???12131415?,B??0??17181920??9?22232425???423416??69??23?4??70?1311??
0(1) 求它们的乘积C。
(2) 将矩阵C的右下角3×2子矩阵赋给D。 (3) 查看MATLAB工作空间的使用情况。 4. 完成下列操作:
(1) 求[100,999]之间能被21整除的数的个数。 (2) 建立一个字符串向量,删除其中的大写字母。
第二部分 MATLAB矩阵分析与处理
?E3?31. 设有分块矩阵A???O2?3R3?2?,其中E、R、O、S分别为单位矩阵、随机矩阵、零矩S2?2???ER?RS?。 ?2S??O阵和对角阵,试通过数值计算验证A2??2. 产生5阶希尔伯特矩阵H和5阶帕斯卡矩阵P,且求其行列式的值Hh和Hp以及它们
的条件数Th和Tp,判断哪个矩阵性能更好。为什么? 3. 建立一个5×5矩阵,求它的行列式值、迹、秩和范数。 4. 已知
??29618??
A??20512?????885??求A的特征值及特征向量,并分析其数学意义。
5. 下面是一个线性方程组:
?1?2??1?3??1??4(1) 求方程的解。
1314151?4??x??0.95??11?????
x?0.672?5??????x??0.52??1??3??6??(2) 将方程右边向量元素b3改为0.53再求解,并比较b3的变化和解的相对变化。 (3) 计算系数矩阵A的条件数并分析结论。
6. 建立A矩阵,试比较sqrtm(A)和sqrt(A),分析它们的区别。
第三部分 选择结构程序设计
1. 求分段函数的值。
?x2?x?6x?0且x??3?y??x2?5x?60?x?5且x?2及x?3
?x2?x?1其他?用if语句实现,分别输出x=-5.0,-3.0,1.0,2.0,2.5,3.0,5.0时的y值。
2. 输入一个百分制成绩,要求输出成绩等级A、B、C、D、E。其中90分~100分为A,80分~89分为B,79分~79分为C,60分~69分为D,60分以下为E。
要求:
(1) 分别用if语句和switch语句实现。
(2) 输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。 3. 硅谷公司员工的工资计算方法如下:
(1) 工作时数超过120小时者,超过部分加发15%。 (2) 工作时数低于60小时者,扣发700元。 (3) 其余按每小时84元计发。
试编程按输入的工号和该号员工的工时数,计算应发工资。
4. 设计程序,完成两位数的加、减、乘、除四则运算,即产生两个两位随机整数,再输入一个运算符号,做相应的运算,并显示相应的结果。
5. 建立5×6矩阵,要求输出矩阵第n行元素。当n值超过矩阵的行数时,自动转为输出矩阵最后一行元素,并给出出错信息。
第四部分 循环结构程序设计
1. 根据
?26?1111?????,求π的近似值。当n分别取100、1000、10000时,122232n2结果是多少?
要求:分别用循环结构和向量运算(使用sum函数)来实现。
2. 根据y?1?111????,求: 352n?1(1) y<3时的最大n值。
(2) 与(1)的n值对应的y值。 3. 考虑以下迭代公式:
xn?1?a b?xn其中a、b为正的学数。
(1) 编写程序求迭代的结果,迭代的终止条件为|xn+1-xn|≤10-5,迭代初值x0=1.0,迭代次数不超过500次。
?b?b2?4a(2) 如果迭代过程收敛于r,那么r的准确值是,当(a,b)的值取(1,1)、
2(8,3)、(10,0.1)时,分别对迭代结果和准确值进行比较。 4. 已知
?f1?1?f?0?2??f3?1??fn?fn?1?2fn?2?fn?3n?1n?2n?3n?3
求f1~f100中:
(1) 最大值、最小值、各数之和。 (2) 正数、零、负数的个数。
5. 若两个连续自然数的乘积减1是素数,则称这两个边疆自然数是亲密数对,该素数是亲密素数。例如,2×3-1=5,由于5是素数,所以2和3是亲密数,5是亲密素数。求[2,50]区间内:
(1) 亲密数对的对数。
(2) 与上述亲密数对对应的所有亲密素数之和。
第五部分 函数文件
1. 定义一个函数文件,求给定复数的指数、对数、正弦和余弦,并在命令文件中调用该函数文件。
2. 一物理系统可用下列方程组来表示:
?m1cos??msin??1?0??0?m10m20?sin?cos??sin??cos?0??a1??0??a??mg?0???2???1? 0??N1??0??????1??N2??m2g?从键盘输入m1、m2和θ的值,求a1、a2、N1和N2的值。其中g取9.8,输入θ时以角度为单位。
要求:定义一个求解线性方程组AX=B的函数文件,然后在命令文件中调用该函数文件。
3. 一个自然数是素数,且它的数字位置经过任意对换后仍为素数。例如13是绝对素数。试求所有两位绝对素数。
要求:定义一个判断素数的函数文件。 4. 设f(x)?11?,编写一个MATLAB函数文件fx.m,使得调用24(x?2)?0.1(x?3)?0.01f(x)时,x可用矩阵代入,得出的f(x)为同阶矩阵。 5. 已知y?f(40)
f(30)?f(20)(1) 当f(n)=n+10ln(n2+5)时,求y的值。
(2) 当f(n)=1×2+2×3+3×4+...+n×(n+1)时,求y的值。
第六部分 高层绘图操作
1. 设y??0.5???3sinx?cosx,在x=0~2π区间取101点,绘制函数的曲线。
1?x2??
2. 已知y1=x2,y2=cos(2x),y3=y1×y2,完成下列操作:
(1) 在同一坐标系下用不同的颜色和线型绘制三条曲线。 (2) 以子图形式绘制三条曲线。
(3) 分别用条形图、阶梯图、杆图和填充图绘制三条曲线。
3. 已知
?x??x?0??e2y??
?1ln(x?1?x2)x?0??2在-5≤x≤5区间绘制函数曲线。