matlab编程题

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

matlab编程题整理

————————————————————————————————作者:————————————————————————————————日期:

作业一

1输出x,y两个中值较大的一个值

x=input(‘x’);

y=input(‘y’);

if x>y

x

else

y

end

2输入x,计算y的值。计算函数的值y=x+1,x<0,y=2x-1,x≧0

x=input(‘x);

if x<0

y=x+1

else

y=2*x-1

end

3输入一学生成绩,评定其等级,方法是:90~100分为“优秀”,80~89分为“良好”,70~79分为“中等”,60~69分为“及格”,60分为“不合格”

x=input(‘x’)

if x>100 | x<0

y=’输入错误’

elseif x>=90

y=’优秀’

elseif x>=80

y=’良好’

elseif x>=70

y=’中等’

elseif x>=60

y=’及格’

else

y=’不合格’

emd

4某超市节日期间举办购物打折的促销活动,优惠办法是:每位顾客当天一次性购物在100元以上者,按九五折优惠;在200元以上者,按九折优惠;在300元以上者,按八五折优惠;在500元以上者,按八折优惠。

x=input(‘x’);

if x>=500

y=x*0.8

elseif x>=300

y=x*0.85

elseif x>=200

y=x*0.9

elseif x>=100

y=x*0.95

else y=x end

5编程计算:s=1+2+3+…+100

sum=0;

for i=1:100

sum=sum+i;

end

sum

引申 1!-2!+3!-4!+5!- (99)

sum=0;

for i=1:99

pdr=1;

for k=1:i

pdr=pdr*k;

end

sum=sum+pdr*(-1)^(i-1);

end

sum

引申 1*2*3*4*……*100

sum=1;

for i=1:100

sum=sum*i

end

sum

6计算1~100的奇数和

sum=0;

for i=1:2:100

sum=sum+i;

end

sum

7百元买百鸡问题。假定小鸡每只5角,公鸡每只2元,母鸡每只3元。编程列出所有可能的够鸡方案

for x=1:33

for y=1:50

for z=1:200

if x+y+z==100 & 3*x+2*y+0.5*z==100 [x,y,z]

end

end

end

end

8我国有13亿人口,按人口年增长0.8%计算,多少年后我国人口超过26亿

n=1;m=13;

while m<26

m=m*(1+0.008);

n=n+1;

end

n

9求水仙花数,水仙花数是指一个n位数

(n>=3),他的每个位上的数字的n次幂之和等于它本身。求出1000以内

for i=100:999

a(1)=fix(i/100);

a(2)=fix((i-a(1)*100)/10);

a(3)=i-a(1)*100-a(2)*10;

if

a(1)^3+a(2)^3+a(3)^3==i

i

end

end

10鸡和兔子关在一个笼子里,已知共有头36个,脚100个,求笼内关了多少只兔子和多少只鸡?

for i=1:50

for j=1:36

if

i+j==36 & i*2+j*4==100

[i,j]

end

end

end

作业二

1.用matlab编程求算式xyz+yzz=532中x,y, z的值(其中xyz和yzz分别表示一个三位数)。

clear

for x=1:9

for y=1:9

for z=1:9

i=100*x+10*y+z+100*y+10*z+z;

if i==532

[x,y,z]

end

end

end

end

2.用matlab编程完成用一元人民币换成一分、两分、五分的所有兑换方案(即输出所有的组合方式)。

clear

for i=0:20

for j=0:50

k=100-i*5-j*2;

if(k>=0)

[I,j,k]

end

end

end

3.有1020个西瓜,第一天卖一半多两个,以后每天卖剩下的一半多两个,问几天后可以卖完,请用matlab编程计算。

day=0; x1=1020

while (x1)

x2=x1/2-2;

x1=x2;

day=day+1;

end

day

4.有一堆零件(100到200之间),如果分成4个零件一组的,则多2个零件;若分成7个零件一组的,则多3个零件;若分成9个零件一组的,则多5个零件。用matlab 编程求这堆零件总数。

for x=100:200

if mod(x,4)==2

if mod(x,7)==3

if mod(x,9)==5

x

end

end

end

end

5.编写程序,求1000至9999之间的回文数.回文数是指正读与反读都一样的数,如1221.

for i=1000:1000:9999

for j=0:9

n=i+j*100+j*10=i/1000

end

end

6.作函数y=sinx,x∈[0,2∏]的图象,用蓝色五角星表示点。

x=linspace(0,2*pi);

y=sin(x);

plot(x,y,'bp');

作业三

1: 编写M函数

32

2

2 6.3

0.05 3.14

x x x

f

x x

-+-

=

+-, 计算

)3(

)2(

)1(2f

f

f+

function y=fun1(x)

y=(x^3-2*x^2+x-6.3)/(x^2+0.05*x-3.14) ;

fun1(1)*fun1(2)+fun1(3)*fun1(3)

2:编写M函数

1,2

3,28

()

45,820

cos sin,20

x x

x x

f x

x x

x x x

+<

⎪≤≤

=⎨

-<≤

⎪+>

⎩,

相关文档
最新文档