matlab课程上机考试,十道编程题(附代码)

测试题目

题目图片:

运行结果:

1

2

3

4

5

6

7

8

9

10

代码:

%% 1
clear
Y=[5 2 4;0 15 1;45 100 23;21 47 3];
xaibiao=find(Y>40)
zijuzhen=Y;
zijuzhen([1,3],:)=[];
zijuzhen(:,2)=[];
j=zijuzhen;
zijuzhen(:,2)=j(:,1);
zijuzhen(:,1)=j(:,2)
s=size(zijuzhen);
fprintf('该矩阵%d行%d列。\n',s(1),s(2));
%% 2
clear
lirun=input('请输入当月利润:');
l=fix((lirun-0.0001)/10);
switch l
    case 0
        ji=lirun*0.1;
    case 1
        ji=(lirun-10)*0.075+10*0.1;
    case num2cell(2:3)
        ji=(lirun-20)*0.05+10*0.075+10*0.1;
    case num2cell(4:5)
        ji=(lirun-40)*0.03+20*0.05+10*0.075+10*0.1;
    case num2cell(6:10)
        ji=(lirun-60)*0.015+20*0.03+20*0.05+10*0.075+10*0.1;
    otherwise
        ji=(lirun-100)*0.01+40*0.015+20*0.03+20*0.05+10*0.075+10*0.1;
end
fprintf('利润为:%d万元,奖金为%f万元。\n\n',lirun,ji);
%% 3
clear
a=input('输入正数开始,输入负数结束:');
as=[];
while a>0
    as=[as,a];
    a=input('输入正数开始,输入负数结束:');
end
max_a=max(as);
min_a=min(as);
sum_a=sum(as);
length_a=length(as);
mean_A=mean(as);
fprintf('输入正数的最大值%d,最小值%d,总和%d,长度%d,平均值%f。\n\n',max_a,min_a,sum_a,length_a,mean_A);
%% 4
clear
a=[-1 0 -6 8;-9 4 0 12.3 ;0 0 5.1 -2;0 -23 0 -7]
b=a(:,1:2);
c=a(1:2,:);
d=b';
a*b
c<d
%% 5
clear
i=1;
l=zeros(1,11);
 
f=zeros(1,11);
f(i)=100; l(i)= 100;
i=i+1;
while i<12
    l(i)= f(i-1)*0.5
    f(i)=l(i);
    i=i+1;
end
fprintf('第10次下落%fm,反弹%fm\n\n',l(10),f(11));
%% 6
clear
f1=inline('exp(2*x)');
I1=quadl(f1,0,1)
x=sym('x');
I2=int(exp(2*x),0,1)
eval(I2)
%% 7
clear
syms x;
f=(x^2-9)/(x-3);
limit_f=limit(f,x,3);
fprintf('f的极限为%d\n\n',limit_f);
%% 8
clear;clc
%y=inline('6*sin(x).*(x<=-1)+(x.^2+1).*(x<1&x>-1)+2*exp(x).*(x>=1)');
x=0:0.01:2;
f=y(x+2);
plot(x,f)
title('f(x+2)的图像')
xlabel('x')
ylabel('y')
%% 9
clear
a=[1 2 5 10];
t=-2:0.01:5;
for i=1:4
    subplot(2, 2, i);
    y=a(i)*t.^2;
    plot(t,y)
    xlabel('t');
    ylabel('y');
    s='a='+string(a(i));
    title(s);
    axis([-2,5,0,260])
end
%% 10
x=-7.5:0.01:7.5;
y=-7.5:0.01:7.5;
[x,y]=meshgrid(x,y);
z=sin(sqrt(x.^2+y.^2))./sqrt(x.^2+y.^2);
mesh(x ,y,z);
title('第10题图片');
函数:
function f = y( x )
%UNTITLED2 此处显示有关此函数的摘要
%   此处显示详细说明
f=zeros(1,length(x));
for i=1:length(x)
if x(i)>=1
    f(i)=2*exp(x(i));
elseif x(i)<=1
     f(i)=6*sin(x(i));
else
     f(i)=x(i).^2+1;
end
        
end
end

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
乘风的头像乘风管理团队
上一篇 2023年12月8日
下一篇 2023年12月8日

相关推荐