• C语言竞赛题 > 卡车更新问题
  • 卡车更新问题

    免费下载 下载该文档 文档格式:DOC   更新时间:2005-08-01   下载次数:0   点击次数:2
    文档基本属性
    文档语言:Simplified Chinese
    文档格式:doc
    文档作者:软件仓库
    关键词:
    主题:
    备注:
    点击这里显示更多文档属性

    卡车更新问题
    (第二届选拔赛第三题,即设备更新问题)
    【试题】 某人购置了一辆新卡车, 从事个体运输业务. 给定以下各有关数据:
    R[t], t=1,2,...,k, 表示已使用过 t 年的卡车, 再工作一年所得的运费, 它 随 t 的增加而减少, k (k≤20) 年后卡车已无使用价值.
    U[t], t=1,...,k, 表示已使用过 t 年的卡车, 再工作一年所需的维修费, 它 随 t 的增加而增加.
    C[t], t=1,2,...,k, 表示已使用过 t 年的旧卡车, 卖掉旧车, 买进新车, 所 需的净费用, 它随 t 的增加而增加. 以上各数据均为实型, 单位为"万元".
    设某卡车已使用过 t 年,
    ① 如果继续使用, 则第 t+1 年回收额为 R[t]-U[t],
    ② 如果卖掉旧车,买进新车, 则 第 t+1 年回收额为 R[0]-U[0]-C[t] .
    该运输户从某年初购车日起,计划工作 N (NN时, F[j,t]≡0. 如果在第j年更新,则收益为p=e[t]+F[j+1,1]; 如果仍使用旧车,则收益为 q=d[t]+F[j+1,t+1]. 这里,e[t]或d[t]为第j年的收益, F[j+1,1]或F[j+1,t+1]为从第j+1年到第N年在不同条件下的最大收益.显然,F[j,t]=Max(p,q).这就是所需要的计算公式.
    在下面的程序中,数组g[j,t]用于记录使用过t年的车,在第j年的选择方案,g[j,t]=1表示更换新车,g[j,t]=0表示仍使用旧车.
    【参考程序】
    program tjcoi2_3; { Write By Li Xuewu }
    type arr20=array[0..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:string[20];
    p,q:real;
    text2,text3:text;
    procedure init;
    var i:integer;
    begin
    writeln('Input filename:');
    readln(file1);
    assign(text2,file1); reset(text2);
    readln(text2,n); readln(text2,k);
    for i:=0 to k do read(text2,rr[i]); readln(text2);
    for i:=0 to k do read(text2,uu[i]); readln(text2);
    for i:=0 to k do read(text2,cc[i]); readln(text2);
    close(text2);
    for i:=0 to k do
    begin d[i]:=rr[i]-uu[i]; e[i]:=d[0]-cc[i]; end;
    end;
    procedure result3;
    var i:integer;
    begin
    writeln('enter filename for output:');
    readln(file1);

    下一页

  • 下载地址 (推荐使用迅雷下载地址,速度快,支持断点续传)
  • 免费下载 DOC格式下载
  • 您可能感兴趣的
  • c语言  c语言入门  什么是c语言  c语言编程软件vc6.0  c语言程序设计  c语言视频教程  c语言编程软件  c语言入门视频教程  c语言学习