matlab1-8章课后作业 下载本文

内容发布更新时间 : 2024/12/23 17:33:58星期一 下面是文章的全部内容请认真阅读。

>> cellplot(A)

4.创建一个结构体,用于统计学生的情况,包括学生的姓名、学号、各科成绩等。然后使用该结构体对一个班级的学生成绩进行管理,如计算总分、平均分、排列名次等.

>> student=struct('name',{'Ann','Bob','Cilly'},'number',{1,2,3},'grade',{90,60,85}) student =

1x3 struct array with fields: name number grade >> student(1) ans =

name: 'Ann' number: 1 grade: 90 >> student(2) ans =

name: 'Bob' number: 2 grade: 60 >> student(3) ans =

name: 'Cilly' number: 3 grade: 85

>> total=student(1).grade+student(2).grade+student(3).grade total = 235

>> average=total/3

average = 78.3333

>> [new,index]=sort([student.grade],'descend') new =

90 85 60 index =

1 3 2

Matlab第六章

1.假设x = [-3, 0, 0, 2, 5, 8]且y = [-5, -2,0, 3, 4, 10]。通过手算得到以下运算的结果,并使用MATLAB检验计算的结果。 (1) z = y<~x (2) z = x&y (3) z = x|y (4). z = xor(x,y)

>> x = [-3, 0, 0, 2, 5, 8] x =

-3 0 0 2 5 8 >> y = [-5, -2,0, 3, 4, 10] y =

-5 -2 0 3 4 10 >> z1 = y<~x z1 =

1 1 1 0 0 0 >> z2 = x&y z2 =

1 0 0 1 1 1 >> z3 = x|y z3 =

1 1 0 1 1 1 >> z4 = xor(x,y) z4 =

0 1 0 0 0 0

2. 在MATLAB中使用一个循环确定:如果用户最初在一个银行帐户中存储$10000,并且在每年的年终再存储$10000(银行每年支付6%的利息),那么账户上要积累$1000000要需要多长时间。

%银行存款计算

a=10000;%本金 b=10000;%每年新增存款 sum=0;%存款总和 i=1; sum=sum+a; while sum<1000000 i=i+1;

sum=sum*(1+0.06)+b; end

disp('year=') disp(i)

near=

34 3. 某个特定的公司生产和销售高尔夫手推车。每周周末,公司都将那一周所生产的手推车转移到仓库(库存)之中。卖出的所有手推车都是从库存中提取。这个过程的一个简单模型为: I (k + 1) = P(k) + I (k) - S(k) 其中: P(k) = 第k周所生产的手推车数量; I (k) = 第k周库存中的手推车数量; S(k) = 第k周所卖出的手推车数量; 以下为10周计划中的每周销售额; 周 销售额 1 50 2 55 3 60 4 70 5 70 6 75 7 80 8 80 9 90 10 55 假设每周的产量都基于前一周的销售额,所以有P(k) = S(k - 1)。假设第一周的产量为50辆手推车:即,P(1) = 50。编写一个MATLAB程序计算:10周之内每周库存之中的手推车数量或者计算手推车库存数量减少到0为止的时间,并同时绘制图形。针对以下两种情况运行该程序: (1)初始库存为50辆手推车,所以I(1)= 50; (2)初始库存为30辆手推车,所以I (1) = 30。

>> s=[50 55 60 70 70 75 80 80 90 55] s =

50 55 60 70 70 75 80 80 90 55 >> for i=2:1:10 p(i)=s(i-1); end >> p p =

0 50 55 60 70 70 75 80 80 90 >> l=[50 0 0 0 0 0 0 0 0 0] l =

50 0 0 0 0 0 0 0 0 0 >> for n=2:1:10

l(n)=l(n-1)+p(n)-s(n); end >> l l =

50 45 40 30 30 25 20 20 10 45 >> l=[30 0 0 0 0 0 0 0 0 0] l =

30 0 0 0 0 0 0 0 0 0 >> for n=2:1:10

l(n)=l(n-1)+p(n)-s(n); end >> l l =

30 25 20 10 10 5 0 0 -10 25

周 库存量(1) 库存量(2) 周 库存量(1) 库存量(2) 1 50 30 6 30 10 2 50 25 7 30 5 3 45 20 8 25 0 4 40 20 9 20 0 30 10 10 10 (<0) 5