matlab第三章答案
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
min=A(i+1);
end
end
max
min
结果:
max =
8888
min =
1
2调用matlab函数
funtion f=max(A)
f=A(1);
for i=1:20;
m=A(i);%还可用A=input('ENTER A:');
if m>f;
f=m;
end
end
end
funtion f=min(A)
y=y+1/(4^i);
end
y
向量运算:
n=input('请输入一个数:');
a=1:1:n;
y=sum(1、/(4、^a));
y
顺序结构
a=-3、0:0、1:3、0;
y=(exp(0、3*a)-exp(-0、3*a))/2、*sin(a+0、3)+log((0、3+a)/2);
y
循环结构
a=-3、0;
while a<=3、0
y=(exp(0、3*a)-exp(-0、3*a))/2、*sin(a+0、3)+log((0、3+a)/2)
要求:(1)分别用if语句与switch语句实现。
(2)输入百分制成绩后要判断成绩的合理性,对不合理的成绩应输出错信息。
If语句:
>> s=input('请输入成绩分数:');
if s>=90&s<=100
disp('A');
elseif s>=80&s<=89
disp('B');
elseif s>=70&s<=79
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('false');
end
请输入成绩分数:88
B
第3题
输入20个数,求其中最大数与最小数。要求分别用循环结构与调用MATLAB的max函数、min函数来实现。
a=a+0、1;
end
y
第5题
当n分别取100、1000、10000时,求下列各式的值:
(1)
循环结构:
n=input('请输入一个数:');
sum=0;
for i=1:n
sum=sum+1/(i*i);
end
sum
向量运算
n=input('请输入一个数:')
a=1:1:n;
b=1:1:n;
y=sum(1、/(a、*b));
n=input('需要输出矩阵的行数:');
if n>0 & n<6
disp(A(n,:));
else
disp(A(5,:));disp('false!');
end
第7题
(1)
function f=factor(n)
f=n+10*log(n^2+5);
end
y=factor(40)/(factor(30)+factor(20));
disp('C');
elseif s>=60&s<=69
disp('D');
elseif s>=0&s<60
disp('E');
else
disp('false');
end
请输入成绩分数:89
B
Switch语句:
>> s=input('请输入成绩分数:');
switch fix(s/10)
case {9,10}
y=0;
for i=1:n
y=y+(-1)^(i-1)/(2*i-1);
end
y
向量运算
n=input('请输入一个数:');
a=1:4:(4*n-3);
b=-3:-4:-(4*n-1);
y=sum(1、/a+1、/b);
y
4(2)
循环结构:
n=input('请输入一个数:');
y=0;
for i=1:n
y
(2)循环结构
n=input('请输入一个数:')
s=1;
for i=1:n
s=s*(i+1)*(i+1)/(i*(i+2));
end
s
向量运算
n=input('请输入一个数:');
a=2:2:2*n;
b=1:2:(2*n-1);
c=3:2:(2*n+1);
e=(a、*a)Leabharlann Baidu/(b、*c);
y=e、*e;
f=A(1);
for i=1:20;%还可用A=input('ENTER A:');
m=A(i);
if m<f;
f=m;
end
end
end
A=input('ENTER A:');
a=max(A);
b=min(A);
a
b
第4题
y= ,当a取-3、0、-2、9、-2、8、、2、8、2、9、3、0时,求各点的函数值。要求分别用顺序结构与循环结构实现。
1循序结构
A=[1 2 3 4 5 6 7 23 32 12 53 1 23 53 5 235 31 8888 33 3 21];%还可用A=input('ENTER A:');
min=A(1);
max=A(1);
for i=1:19
if A(i+1)>max
max=A(i+1);
end
if A(i+1)<min
第1题:
从键盘输入一个3位数,将它反向输出。如输入639输出936、
n1=fix(n/100);
n2=rem(fix(n/10),10);
n3=rem(n,10);
m=n3*100+n2*10+n1;
disp(m)
请输入一个三位数:489
984
第2题:
输入一个百分制成绩,要求输出成绩等级A、B、C、D、E。其中90~100分为A,80~89分为B、70~79分为C、60~69分为D,60分以下为E。
y
n=input('请输入一个数:');
y=1;
a=2:2:2*n;
b=1:2:(2*n-1);
c=3:2:(2*n+1);
y=prod((a、*a)、/(b、*c));
y
第6题
建立5x6矩阵,要求输出矩阵第n行元素。当n值超过矩阵的行数时,自动转为输出矩阵最后一行元素,并给出出错信息。
A=[1,2,3,4,5,6;2,3,4,5,6,7;3,4,5,6,7,8;4,5,6,7,8,9;5,6,7,8,9,0];
(2)
function f=factor1(n)
a=1:1:n;
b=2:1:(n+1);
f=sum(a、*b);
end
y=factor1(40)/(factor1(30)+factor1(20));
思考题
2(1)2、*N (2)1/2、*N(3)1、/N(4)1、/(N、*N)
4、(1)循环结构
n=input('请输入一个数:')
end
end
max
min
结果:
max =
8888
min =
1
2调用matlab函数
funtion f=max(A)
f=A(1);
for i=1:20;
m=A(i);%还可用A=input('ENTER A:');
if m>f;
f=m;
end
end
end
funtion f=min(A)
y=y+1/(4^i);
end
y
向量运算:
n=input('请输入一个数:');
a=1:1:n;
y=sum(1、/(4、^a));
y
顺序结构
a=-3、0:0、1:3、0;
y=(exp(0、3*a)-exp(-0、3*a))/2、*sin(a+0、3)+log((0、3+a)/2);
y
循环结构
a=-3、0;
while a<=3、0
y=(exp(0、3*a)-exp(-0、3*a))/2、*sin(a+0、3)+log((0、3+a)/2)
要求:(1)分别用if语句与switch语句实现。
(2)输入百分制成绩后要判断成绩的合理性,对不合理的成绩应输出错信息。
If语句:
>> s=input('请输入成绩分数:');
if s>=90&s<=100
disp('A');
elseif s>=80&s<=89
disp('B');
elseif s>=70&s<=79
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('false');
end
请输入成绩分数:88
B
第3题
输入20个数,求其中最大数与最小数。要求分别用循环结构与调用MATLAB的max函数、min函数来实现。
a=a+0、1;
end
y
第5题
当n分别取100、1000、10000时,求下列各式的值:
(1)
循环结构:
n=input('请输入一个数:');
sum=0;
for i=1:n
sum=sum+1/(i*i);
end
sum
向量运算
n=input('请输入一个数:')
a=1:1:n;
b=1:1:n;
y=sum(1、/(a、*b));
n=input('需要输出矩阵的行数:');
if n>0 & n<6
disp(A(n,:));
else
disp(A(5,:));disp('false!');
end
第7题
(1)
function f=factor(n)
f=n+10*log(n^2+5);
end
y=factor(40)/(factor(30)+factor(20));
disp('C');
elseif s>=60&s<=69
disp('D');
elseif s>=0&s<60
disp('E');
else
disp('false');
end
请输入成绩分数:89
B
Switch语句:
>> s=input('请输入成绩分数:');
switch fix(s/10)
case {9,10}
y=0;
for i=1:n
y=y+(-1)^(i-1)/(2*i-1);
end
y
向量运算
n=input('请输入一个数:');
a=1:4:(4*n-3);
b=-3:-4:-(4*n-1);
y=sum(1、/a+1、/b);
y
4(2)
循环结构:
n=input('请输入一个数:');
y=0;
for i=1:n
y
(2)循环结构
n=input('请输入一个数:')
s=1;
for i=1:n
s=s*(i+1)*(i+1)/(i*(i+2));
end
s
向量运算
n=input('请输入一个数:');
a=2:2:2*n;
b=1:2:(2*n-1);
c=3:2:(2*n+1);
e=(a、*a)Leabharlann Baidu/(b、*c);
y=e、*e;
f=A(1);
for i=1:20;%还可用A=input('ENTER A:');
m=A(i);
if m<f;
f=m;
end
end
end
A=input('ENTER A:');
a=max(A);
b=min(A);
a
b
第4题
y= ,当a取-3、0、-2、9、-2、8、、2、8、2、9、3、0时,求各点的函数值。要求分别用顺序结构与循环结构实现。
1循序结构
A=[1 2 3 4 5 6 7 23 32 12 53 1 23 53 5 235 31 8888 33 3 21];%还可用A=input('ENTER A:');
min=A(1);
max=A(1);
for i=1:19
if A(i+1)>max
max=A(i+1);
end
if A(i+1)<min
第1题:
从键盘输入一个3位数,将它反向输出。如输入639输出936、
n1=fix(n/100);
n2=rem(fix(n/10),10);
n3=rem(n,10);
m=n3*100+n2*10+n1;
disp(m)
请输入一个三位数:489
984
第2题:
输入一个百分制成绩,要求输出成绩等级A、B、C、D、E。其中90~100分为A,80~89分为B、70~79分为C、60~69分为D,60分以下为E。
y
n=input('请输入一个数:');
y=1;
a=2:2:2*n;
b=1:2:(2*n-1);
c=3:2:(2*n+1);
y=prod((a、*a)、/(b、*c));
y
第6题
建立5x6矩阵,要求输出矩阵第n行元素。当n值超过矩阵的行数时,自动转为输出矩阵最后一行元素,并给出出错信息。
A=[1,2,3,4,5,6;2,3,4,5,6,7;3,4,5,6,7,8;4,5,6,7,8,9;5,6,7,8,9,0];
(2)
function f=factor1(n)
a=1:1:n;
b=2:1:(n+1);
f=sum(a、*b);
end
y=factor1(40)/(factor1(30)+factor1(20));
思考题
2(1)2、*N (2)1/2、*N(3)1、/N(4)1、/(N、*N)
4、(1)循环结构
n=input('请输入一个数:')