卡车更新问题.doc

上传人:汽*** 文档编号:559344976 上传时间:2023-09-17 格式:DOC 页数:3 大小:29.51KB
返回 下载 相关 举报
卡车更新问题.doc_第1页
第1页 / 共3页
卡车更新问题.doc_第2页
第2页 / 共3页
卡车更新问题.doc_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《卡车更新问题.doc》由会员分享,可在线阅读,更多相关《卡车更新问题.doc(3页珍藏版)》请在金锄头文库上搜索。

1、卡车更新问题 (第二届选拔赛第三题) 【试题】 某人购置了一辆新卡车, 从事个体运输业务. 给定以下各有关数据: Rt, t=1,2,.,k, 表示已使用过 t 年的卡车, 再工作一年所得的运费, 它 随 t 的增加而减少, k (k20) 年后卡车已无使用价值. Ut, t=1,.,k, 表示已使用过 t 年的卡车, 再工作一年所需的维修费, 它 随 t 的增加而增加. Ct, t=1,2,.,k, 表示已使用过 t 年的旧卡车, 卖掉旧车, 买进新车, 所 需的净费用, 它随 t 的增加而增加. 以上各数据均为实型, 单位为万元. 设某卡车已使用过 t 年, 如果继续使用, 则第 t+1

2、年回收额为 Rt-Ut, 如果卖掉旧车,买进新车, 则 第 t+1 年回收额为 R0-U0-Ct . 该运输户从某年初购车日起,计划工作 N (NN时, Fj,t0. 如果在第j年更新,则收益为p=et+Fj+1,1; 如果仍使用旧车,则收益为 q=dt+Fj+1,t+1. 这里,et或dt为第j年的收益, Fj+1,1或Fj+1,t+1为从第j+1年到第N年在不同条件下的最大收益.显然,Fj,t=Max(p,q).这就是所需要的计算公式. 在下面的程序中,数组gj,t用于记录使用过t年的车,在第j年的选择方案,gj,t=1表示更换新车,gj,t=0表示仍使用旧车.【参考程序】program

3、tjcoi2_3; Write By Li Xuewu type arr20=array0.20 of real; var rr,uu,cc,d,e:arr20; f:array 0.22,0.21 of real; g:array 0.22,0.21 of integer; i,j,k,k2,n,t:integer; file1:string20; p,q:real; text2,text3:text;procedure init; var i:integer; begin writeln(Input filename:); readln(file1); assign(text2,file1

4、); reset(text2); readln(text2,n); readln(text2,k); for i:=0 to k do read(text2,rri); readln(text2); for i:=0 to k do read(text2,uui); readln(text2); for i:=0 to k do read(text2,cci); readln(text2); close(text2); for i:=0 to k do begin di:=rri-uui; ei:=d0-cci; end; end;procedure result3; var i:intege

5、r; begin writeln(enter filename for output:); readln(file1); assign(text3,file1); rewrite(text3); writeln(text3,f1,1:8:3); writeln(text3, 1 0, e0:8:2); t:=1; for i:=2 to n do if gi,t=1 then begin writeln(text3,i:2, 1,et:8:2); t:=1 end else begin writeln(text3,i:2, 0,dt:8:2); t:=t+1; end ; writeln(f1

6、,1:8:3); writeln( 1 0,e0:8:2); t:=1; for i:=2 to n do if gi,t=1 then begin writeln(i:2, 1,et:8:2); t:=1 end else begin writeln(i:2, 0,dt:8:2); t:=t+1; end ; close(text3); end;begin main init; for i:=0 to n do for j:=0 to k do gi,j:=1; for i:=0 to k do fn+1,i:=0; for i:=1 to n+1 do fi,k+1:=-100; for j:=n downto 2 do begin k2:=k; if jp then begin gj,t:=0; fj,t:=q; end; end; end; f1,1:=d0+f2,1; result3;end. end.

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号