matlab第四次作业

第一题代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
clc
clear
a=input('输入三角形的一条边 ');
b=input('输入三角形的一条边 ');
c=input('输入三角形的一条边 ');
if(a>0&&b>0&&c>0)
if((a+b>c)&&(a+c>b)&&(b+c>a))
p=(a+b+c)/2;
s=sqrt(p*(p-a)*(p-b)*(p-c));
fprintf('三角形面积为%f\n',s);
else
fprintf('不能构成一个三角形\n');
end
else
fprintf('不能构成一个三角形\n');
end

第二题代码

1
2
3
4
5
6
7
8
clc
clear
n=input('输入一个数n ');
sum=0;
for ii=1:n
sum=sum+ii;
end
sum

第三题代码

1
2
3
4
5
6
7
8
function res=myfactorial(n)
res=1;
if n==1
res=1;
else
res=myfactorial(n-1)*n;
end
end

第四题代码

1
2
3
4
5
6
7
a=input('输入一个数a ');
b=input('输入一个数b ');
t=a;
a=b;
b=t;
fprintf('a=%d\n',a);
fprintf('b=%d\n',b);

第五题代码

1
2
3
4
5
6
7
clc
clear
a=input('输入二次项系数a ');
b=input('输入一次项系数b ');
c=input('输入常数c ');
r=roots([a b c]);
disp(r);

第六题代码

1
2
3
4
function [r,theta]=Coord_Trans(x,y)
r=sqrt(x*x+y*y);
theta=atan(y/x);
end

第七题代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
clc
clear
n=input('学生成绩: ');
switch floor(n/10)
case {0,1,2,3,4,5}
disp('不及格');
case {6,7}
disp('及格');
case {8}
disp('良好');
case {9,10}
disp('优秀');
otherwise
disp(-1);
end

第八题代码

1
2
3
4
5
6
7
8
9
10
11
clc
clear
a=1;b=1;c=2;n=3;
while c<=500
c=a+b;
%fprintf('%d %d\n',a,b);
a=b;
b=c;
n=n+1;
end
fprintf("%d %d\n",c,n);

第九题代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
clc
clear
n=[1 2 3 5 7];
buf=n;
for ii=1:5
cnt=0;
while(1)
if (cnt~=0&&n(ii)==1)
break;
else
if mod(n(ii),2)==0
n(ii)=n(ii)/2;
else
n(ii)=n(ii)*3+1;
end
cnt=cnt+1;
end
end
fprintf('%d经过%d步变为1\n',buf(ii),cnt);
end
Donate
  • Copyright: Copyright is owned by the author. For commercial reprints, please contact the author for authorization. For non-commercial reprints, please indicate the source.
  • Copyrights © 2022-2024 CPY
  • Visitors: | Views:

请我喝杯咖啡吧~

支付宝
微信