




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、MATLAB程序设计基础平时作业说明:1-17题为必做题,须分别提交纸质文档及与纸质文档对应的电子文档.doc版。1. 对于每输入的一个百分制成绩,要求输出对应的成绩等级A、B、C、D、E。其中A的分值在区间90,100)内;B的分值在区间80,90)内;C的分值在区间70,80)内;D的分值在区间60,70)内;E的分值在区间0,60)内;要求:1)要有对输入成绩是否合理的判断:输入成绩如果含有小数,只能是“x.5”的形式,其实x为合理的整数。成绩必须在百分制范围内。如果输入的成绩不合理,应向命令窗口输出报错信息“输入的成绩不合理”2)用if语句实现题目要求x=input('输入一个
2、数值:'); %输入if mod(x,0.5)=0&&x>=0&&x<100; %mod(x,0.5)表示x除以0.5的余数,用以判断成绩含小数是否为x.5 if x<0&x>=100 %不合理成绩disp('输入的成绩不合理') elseif x<100&x>=90%成绩90 100)disp('成绩等级为:A')elseif x<90&x>=80 %成绩80 90)disp('成绩等级为:B') elseif x<80&
3、;x>=70%成绩70 80) disp('成绩等级为:C') elseif x<70&x>=60%成绩60 70)disp('成绩等级为:D')elsedisp('成绩等级为:E')%成绩0 60) endelse disp('输入的成绩不合理') end运行结果:输入一个数值:57成绩等级为:E输入一个数值:93.3输入的成绩不合理3)用switch语句实现题目要求x=input('请输入一个成绩:'); %输入if mod(x,0.5)=0&&x>=0&
4、&x<100 %mod(x,0.5)表示x除以0.5的余数,用以判断成绩含小数是否为x.5 switch floor(x/10) %x除以10向下取整 case 9 disp('成绩等级为:A'); case 8 disp('成绩等级为:B'); case 7 disp('成绩等级为:C'); case 6 disp('成绩等级为:D'); case 5,4,3,2,1,0 disp('成绩等级为:E'); otherwise disp('输入的成绩不合理'); endelse dis
5、p('输入的成绩不合理');end运行结果:请输入一个成绩:0成绩等级为:E请输入一个成绩:120输入的成绩不合理请输入一个成绩:95.5成绩等级为:A2. 设计程序,完成10,99之间两位整数的加、减、乘、除四则运算。要求:1)随机产生区间10,99之内的两位随机整数2)在产生符合要求的随机数后,输入一个运算符号,做相应的运算3)运算结果显示在命令窗口,其显示类似于“a=x+y=68”的形式。x=round(99-10)*rand(1)+10); %在区间10 99随机选一个数x y=round(99-10)*rand(1)+10); %在区间10 99随机选一个数ysym=
6、input('请输入运算符号(+-*/):','s'); switch sym %switch语句 case'+' a=x+y; disp('输入的两数之和b=',num2str(x),'+',num2str(y),'=',num2str(a); %输出显示类似于“a=x+y=68”的形式 case'-' a=x-y; disp('输入的两数之差c=',num2str(x),'-',num2str(y),'=',num2str(a);
7、case'*' a=x*y; disp('输入的两数之积d=',num2str(x),'*',num2str(y),'=',num2str(a); case'/' a=x/y; disp('输入的两数之商e=',num2str(x),'/',num2str(y),'=',num2str(a); otherwise disp('输入符号错误') end运行结果:请输入运算符号(+-*/):+输入的两数之和b=95+31=126请输入运算符号(+-*/):
8、-输入的两数之差c=64-53=11请输入运算符号(+-*/):*输入的两数之积d=89*78=6942请输入运算符号(+-*/):/输入的两数之商e=51/12=4.253. 求下列分段函数的值并绘制函数曲线。 要求:1)x的值以向量的形式从键盘输入。2)用if语句实现,分别输出x =5.0,3.0,1.0,2.0,2.5,3.0,5.0时的y值。x=input('please input x=');if x<0 & x=3 y=x.2+x-6;elseif x>=0 & x<10 & x=2 & x=3 y=x.2-5.*x
9、+6;else y=x.2-x-1;enddisp('y=',num2str(y)运行结果:please input x=-5.0 -3.0 1.0 2.0 2.5 3.0 5.0 y=14 11 -1 1 2.75 5 193)自行拟定自变量的取值,绘制该分段函数的二维曲线。x=-10:1:15; %自拟自变量的取值if x<0 & x=3 y=x.2+x+6;elseif x>=0 & x<10 & x=2 & x=3 y=x.2-5.*x+6;else y=x.2-x-1;endplot(x,y,'r-')
10、 %绘制分段函数title('分段函数')xlabel('x')ylabel('y')hold on 图3(3)分段函数的二维曲线4. 分别使用for循环语句和while循环语句找出最小的n值,使得n!>10100,并求出n!。for循环语句如下:s=1; %对s赋初值for n=1:100 %默认步长为1 s=s*n; %s=n! if(s>10100) break; %如果s>10100,结束运行 endenddisp('n=',num2str(n) %输出n disp('s=',num2st
11、r(s) %输出s运行结果:n=8s=40320while循环语句如下:s=1; %对s赋初值n=0; %循环次数赋初值while(s<=10100) n=n+1; %不能使用+ s=s*n; enddisp('n=',num2str(n);disp('s=',num2str(s); %组合字符串 运行结果:n=8s=403205. 已知f1=1,n=1f2=0,n=2f3=1,n=3fn=fn12fn2fn3,n>3求f1 f50中:1) 最大值和最小值及它们的位置、各数之和(最大值给变量MAX,其位置给变量x,最小值给变量MIN,其位置给变量y,
12、各数之和给变量SUM)。2) 正数、零、负数的个数(依次赋值给变量N_positive,N_zero,N_negative)。f(1)=1; f(2)=0;f(3)=1; %输入n=3; %赋值while (n<50) n=n+1; f(n)=f(n-1)-2*f(n-2)+f(n-3);endMAX,x=max(f) %MAX为向量f中最大值元素,x为最大值元素的索引号MIN,y=min(f) %MAX为向量f中最小值元素,y为最小值元素的索引号SUM=sum(f)N_positive=numel(find(f>0) %numel表示返还数组中的元素个数,N_zero=numel
13、(find(f=0) %返还f中等于0的位置N_negative=numel(find(f<0)运行结果:MAX =406631x = 49MIN =-403795y =50SUM =76861N_positive =25N_zero =2N_negative =236. Fibonacci数组的元素满足Fibonacci规则:ak+2=ak+ak+1,(k=1,2,3,);且a1= a2=1。请设计一段程序,求出该数组中第一个大于10000的元素对应的k值以及该元素值。a(1)=1; a(2)=1;k=1;while a(k)<=10000 a(k+2)=a(k)+a(k+1);
14、 k=k+1;enddisp('k=',num2str(k)disp('a(k)=',num2str(a(k)运行结果:k=21a(k)=109467. 定义自变量x的取值区间为5,5,编写一个函数文件,实现绘制函数y=ax3+bx2+cx+d的曲线,其中给定各系数值分别为a=1,b=2, c=5,d=3;a=3, b=7,c=1, d=4;a=0, b=4, c=0, d=5 要另外编写调用该函数文件的m文件,实现调用。function my1(a,b,c,d) %定义主函数,函数文件名为my1.mx=-5:1:5; %输入xy=a*x.3+b*x.2+c*x
15、+d;plot(x,y); %绘制曲线xlabel('x轴'); %标志x轴ylabel('y轴'); %标志y轴title('函数图像'); %设置图名称a=input('please input a='); %子函数b=input('please input b=');c=input('please input c=');d=input('please input d='); %利用输出参数a,b,c,d向my1传递数据my1(a,b,c,d); %调用的是啊,a,b,c,d四个
16、参数图7(1) 图7(2)图7(3) 8. 设计程序,在一个图形窗体中画出函数y=ex和y=logx的特性曲线。其中y=ex中x取值区间为(2,2),y=logx中x取值区间为(0.1,5)。要求:1)要有图例、标题('二维图')、坐标轴标签('x轴数据'和'y轴数据');2)每条曲线的属性自己设置,但不能全用默认值。x1=-2:0.1:2;y1=exp(x1);x2=0.1:0.1:5;y2=log(x2);plot(x1,y1,'r*-',x2,y2,'ko-')legend('函数y=exp(x)的特
17、性曲线','函数y=logx的特性曲线')title('二维图')xlabel('x轴数据')ylabel('y轴数据')图89. 采用2行2列子图的方式进行二维图形绘制,要求:1)自变量x的取值区间为0,22)三个函数分别为:y1=sin(x),y2=cos(x),y3=sin(x)+cos(x)3)在第1幅子图绘制y1的曲线;在第2幅子图绘制y2的曲线;在第3幅子图绘制y3的曲线;在第4幅子图中绘制所有3条曲线4)对每一幅子图,都要有图例、坐标轴标签;曲线的属性自己设置,不能全用默认值。x=0:0.1:2*pi;y1=
18、sin(x);y2=cos(x);y3=sin(x)+cos(x);subplot(2,2,1);plot(x,y1,'ro-');legend('sin曲线');title('y=sin(x)');xlabel('横坐标1');ylabel('纵坐标1');subplot(222);plot(x,y2,'g*-');legend('cos曲线');title('y=cos(x)');xlabel('横坐标2');ylabel('纵坐标2
19、9;);subplot(223);plot(x,y3,'b-p');legend('sin(x)+cos(x)曲线');title('y=sin(x)+cos(x)');xlabel('横坐标3');ylabel('纵坐标3');subplot(224);plot(x,y1,'ro-',x,y2,'g*-',x,y3,'b-p'); %同时绘制三个函数的图像legend('sin曲线','cos曲线','sin(x)+cos(x
20、)曲线');title('三个函数的曲线');xlabel('横坐标');ylabel('纵坐标');图(9)10. 采用1行2列子图的方式进行二维图形绘制,要求: 1)在第1幅子图绘制三维曲线:x0,20y=sin(x)z=cos(x)2)在第2幅子图绘制三维曲面:x20,20y10,103) 对每一幅子图,都要有标题、坐标轴标签;曲线的属性自己设置,不能全用默认值。subplot(121); %在第一个子图中绘图x1=0:0.1:20;y1=sin(x1);z1=cos(x1);plot(x1,y1,'ro-',x1,
21、z1,'b*-');legend('sin曲线','cos曲线'); %设置图例title('图1');xlabel('x1');ylabel('y1');subplot(122); %在第二个子图中绘图x2=-20:1:20;y2=0.5*x2;X,Y=meshgrid(x2,y2); %生成X和Y网络坐标矩阵z=(X.2)/9-(Y.2)/4; %网格化后直接输入zmesh(X,Y,z); %曲面绘图legend('双曲面');title('图2');xlabel
22、('x2');ylabel('y2');zlabel('z')grid on;图(10)11. 已知函数,其中x的取值区间为2,2,试编程绘制该二维曲线,要求:要有标题、坐标轴标签,曲线颜色用红色。 p=ezplot('(x.2+y.2-1).3-x.2.*y.3',-2 2); %在区间-2 2绘制(x2+y2-1)3-x2y2=0的图像set(p,'color','r'); %指定曲线颜色为红色title('曲线图');xlabel('x轴');ylabel(
23、39;y轴');图(11)12. 已知原始数据,插值点为,试用4种不同的插值方法进行插值,并在一幅图的4个子图中分别绘出4种插值曲线,并各自注明所使用的插值方法。x=0:1:4*pi;y=sin(x).*exp(-x/5);xi=0:0.3:4*pi; %设置新的插点subplot(221)yi=interp1(x,y,xi,'nearset'); %使用最近点插值plot(xi,yi)title('最近点插值')subplot(222)yi=interp1(x,y,xi); %默认为线性插值plot(xi,yi)title('线性插值'
24、)subplot(223)yi=interp1(x,y,xi,'cubic'); %使用三次立方插值plot(xi,yi)title('三次立方插值')subplot(224)yi=interp1(x,y,xi,'spline'); %使用三次样条插值plot(xi,yi)title('三次样条插值')图(12)13考虑表1中的数据:表1 一周气温温度数据周一周二周三周四周五周六周日早晨15151813131516中午20212519202225夜晚16171214161819完成以下功能:1)将一周的气温温度数据,使用一个矩阵A
25、进行保存。2)取出周二中午、周四上午、周日中午和夜晚的温度值,组成新的温度值向量。3)取出矩阵A中的前六个数值,组成新的温度值向量。4)取出周二、周三、周四及周六的数据,组成新的温度值矩阵。5)求每天温度的平均值6)求一周的早晨、中午和夜晚温度的平均值7)求一周的温度平均值及最高温度及最低温度A=15 15 18 13 13 15 16;20 21 25 19 20 22 25;16 17 12 14 16 18 19 %将一周的气温温度数据使用A矩阵保存B=A(5 10 20 21) %取出周二中午周四上午周日中午和夜晚的温度组成新矩阵C=A(1:1:6) %取出A中的前六个组成新的矩阵D=
26、A(:,2 3 4 6) %取出周二周三周四和周六的数据组成新的矩阵everyday=mean(A) %表示每一列的平均值,即每天气温的平均值mae=mean(A') %一周早上,中午,晚上的平均值all=mean(A(:) %一周的温度平均值MAX=max(A(:) %一周的最高温度MIN=min(A(:) %一周的最低温度14考虑表2中的数据,这是一位举重教练收集的不同性别的举重动员每个年龄的最大举重磅数,据信这三者之间存在着某种函数关系,请估算当前队伍中队员(要求1320岁每一岁都有)的最大举重磅数。表2 不同性别的举重动员每个年龄的最大举重磅数性别年龄重举大最131517192
27、0男270290330350380女250270310330360t=13 15 17 19 20'y=270 290 330 350 380;250 270 310 330 360'X=ones(size(t) t t.2;%ones(size(t)以t的长度为矩阵的大小设置全1矩阵Z=Xy; %得到系数T=(13:20)'Y=ones(size(T) T T.2*Z;MAXT=max(Y)运行结果:MAXT =14305/38 13545/3815.某乡镇企业2009-2015年的生产利润如表3所示。表3 过去7年生产利润年份2009201020112012201320142015利润(万元)70122144152174196202要求用多项式拟合法预测出该企业2016年和2017年的利润,并绘出拟合图。x=2009:2015; %x在2009 2015取值,间隔为1y=70 122 144 152 174 196 202; %得到数据(x,y)p=polyfit(x,y,1); %对(x,y)数据进行1阶多项式拟合,得到多项式系数px1=2009:2018;y1=polyval(p,x1); %根据得到的多项式,计算x处的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 劳务分包协议书合同
- 车队承包合同
- 足浴店员工劳动合同
- 建设工程采购施工合同
- 商品房合同转让协议
- 广西电力职业技术学院《动物检疫检验学》2023-2024学年第二学期期末试卷
- Unit 4 My Family Lesson 2 教学设计 2024-2025学年冀教版英语七年级上册
- 武汉东湖学院《医患沟通交流》2023-2024学年第二学期期末试卷
- 济南2025年山东济南平阴县事业单位招聘初级综合类岗位10人笔试历年参考题库附带答案详解-1
- 齐鲁理工学院《汽车电机技术》2023-2024学年第二学期期末试卷
- 小学数学1-6年级(含奥数)找规律专项及练习题附详细答案
- 中考英语阅读理解(含答案)30篇
- 《同济大学简介》课件
- 文化产业管理专业大学生职业生涯规划书
- DSM-V美国精神疾病诊断标准
- 文献的载体课件
- 2023年高考语文全国乙卷《长出一地的好荞麦》解析
- 混凝土强度回弹检测方案
- 历年中考地理生物变态难题
- 研学旅行课程标准(一)-前言、课程性质与定位、课程基本理念、课程目标
- 部编版二年级下册语文教案全册
评论
0/150
提交评论