C语言源程序.docVIP

  • 11
  • 0
  • 约3.11千字
  • 约 5页
  • 2016-03-31 发布于湖北
  • 举报
C语言源程序.doc

MATLAB语言程序设计 期末考试 学号: 20125101150 姓名: 韩丽萍   2、应用题(两小题任选1题) (2)某工厂生产A和B两种产品,她们需要经过三种设备的加工,工时如表1所列。设备一、二、三每天可使用的时间分别不超过12、10和8小时。产品A和B的利润随市场的需求有所波动,如果预测未来某个时期内A和B的利润分别为4000元/吨和3000元/吨,问每天应安排产品A、B各多少吨,才能使工厂利润最大? 表1 生产产品工时表 产品 设备一 设备二 设备三 A/(小时/吨) 3 3 4 B/(小时/吨) 4 2 2 设备每天最多可工作时数/小时 12 10 8 请写出具体解决方案,并编写该解决方案的具体MATLAB程序代码。 解:假设每天应安排生产产品A和B分别为x1和x2吨,依题意可建数学模型如下: 首先将目标函数转换成标准形式:min z = -4000x1-3000x2 编写M文件L0509.m如下: f = [-4000;-3000]; A=[3 4; 3 3; 4 2]; b=[12;10;8]; lb = zeros(2,1); [x,fval] = linprog(f,A,b,[],[],lb) 运行结果如下: L0509 Optimization terminated successfully. x = 0.8000 2.4000 fval = -1.0400e+004 可见每天生产A产品和B产品分别为0.8吨和2.4吨可使工人获得最大利润,每天最大利润为104000元。 4、结合课本第三章所提供的18种绘图方法,请实现其中8种绘图,提供程序代码及所绘制的图形。 解: 【1】直方图 直方图绘制示例: 例1:x=[1 2 3 4 5 6 7]; Y=[5 2 1;8 9 12;9 6 3;7 4 2;8 7 6;3 7 10;4 7 9]; colormap(summer); subplot(3,3,1); bar(Y); subplot(3,3,2); bar(Y,‘stacked’); subplot(3,3,3); bar(Y,‘grouped’); subplot(3,3,4); barh(Y,‘stacked’); subplot(3,3,6); bar3(x,Y,‘stacked’); subplot(3,3,7); bar3(Y,‘grouped’); subplot(3,3,8); bar3h(Y); subplot(3,3,9); bar3h(Y,‘grouped’); 【2】饼图 饼图绘制示例: 例2:某年级学生成绩为:优秀21人,良好87人,中等75人,及格64人,不及格20人。试利用饼图予以表达和分析。 M文件如下: X=[21 87 75 64 20]; subplot(2,2,1); pie(X,[1 0 0 0 0]); legend({‘优秀’,’良好’,’中等’,’及格’,’不及格’}); subplot(2,2,2); pie(X,[0 0 0 0 1]); subplot(2,2,3); pie3(X,[1 0 0 0 0]); subplot(2,2,4); pie3(X,[0 0 0 0 1]); 【3】阶梯图 阶梯图示例: 例3:绘制区间[0,2π]内sin(x)的阶梯图,步长取0.25。 x=0:0.25:2*pi; y=sin(x); stairs(x,y,’-b’); xlabel(‘sin(x)阶梯图’); hold on; plot(x,y,’-r’); hold off; 【4】等高线图 等高线图示例: 例4:[X,Y,Z]=peaks; subplot(2,2,1); contour(X,Y,Z,10); subplot(2,2,2); contour3(X,Y,Z,10); subplot(2,2,3); contour3(X,Y,Z,[1 2 3 4 5 6]); subplot(2,2,4); c=contour(X,Y,Z,2); clabel(c); 【5】误差图 误差图示例: 例5:假设误差函数为5/length(x),区间[0,1],试绘制函数sin(x)在区间[0,1]内的误差图。 x=[0:0.5:10]; y=10+x.^2; e=5*[0:1/(length(x)-1):1]; errorbar(y,e); 【6】拓扑图 拓扑图示例: 例6:k=1:50; [b,xy]=bu

文档评论(0)

1亿VIP精品文档

相关文档