娄山中学noip吧 关注:137贴子:1,769
  • 10回复贴,共1

20120229作业

只看楼主收藏回复

1、车站的进站口进一个人的时间是2秒到8秒,若有100个人进站则需多少时间?
2、在设计奥林匹克运动场馆旱,必须考虑到人员的安全疏散问题。经测算,每个观看竞赛的观众,走出大门的时间约为3到5秒,同时走出一个大门的观众最多可达5人。对于一个可容纳一万二千人的运动场馆,要求在规定的时间内观众全部得到安全疏散,则该场馆至少应该设计多少个疏散出口?


1楼2012-02-29 15:07回复
    RANDOM函数题,很简单的咯,第二题可以转化为2400人要通过只能过1个人的大门


    2楼2012-02-29 16:52
    回复
      注意RANDOM(N)是从0到N-1


      3楼2012-02-29 16:52
      回复
        var
        a:integer;
        begin
        randomize;
        a:=random(9);
        if a>2 then
        begin
        a:=a*100;
        end
        else halt;
        writeln(a);
        readln
        end.


        IP属地:上海4楼2012-02-29 19:35
        回复
          1.你要模拟100次,因为每个人通过的时间不同
          2.随机2到8,准确的写法应该是RANDOM(7)+2


          5楼2012-02-29 19:52
          回复
            于亚杰
            1.var n,i:integer;
            begin
            n:=0;
            for i:=1 to 100 do begin
            randomize;
            n:=n+random(7)+2;
            end;
            end.
            2.var t,n,i:integer;
            begin
            randomize;
            n:=random(12000)+1;
            t:=0;
            randomize;
            for i:=1 to 2400 do t:=t+random(3)+3;
            for i:=1 to 12345 do if t div i<=n then begin writeln(i);exit;
            end.


            IP属地:上海6楼2012-02-29 21:05
            回复
              谢谢小张老师为大家提供的思路,修正一下,题目大概没说清楚,应该是大门可同时过五个人


              7楼2012-03-01 08:04
              回复
                第二题漏了一个END。。。。。。


                8楼2012-03-01 20:13
                回复
                  第一题/解一:
                  var
                  i:byte;
                  s:word;
                  begin
                  while true do begin
                  randomize;
                  s:=0;
                  for i:=1 to 100 do s:=s+random(7)+2;
                  writeln(s);
                  readln;
                  end;
                  end.
                  解二:
                  var
                  a:word;
                  begin
                  while true do begin
                  a:=random(601)+200;
                  writeln(a);
                  readln;
                  end;
                  end.
                  最后,鄙视小李盗我头像


                  IP属地:美国9楼2012-03-01 21:03
                  回复
                    第二题/解一:
                    var
                    s,i,q:word;
                    begin
                    while not eof do begin
                    readln(q);
                    s:=0;
                    for i:=1 to 2400 do s:=s+random(3)+3;
                    if s mod q=0 then writeln(s div q)
                    else writeln(s div q+1);
                    end;
                    end.
                    第二题/解二:
                    var
                    s,i,q:word;
                    begin
                    while not eof do begin
                    readln(q);
                    s:=s+random(4801)+7200;
                    if s mod q=0 then writeln(s div q)
                    else writeln(s div q+1);
                    end;
                    end.
                    最后,鄙视小李盗我头像


                    IP属地:美国10楼2012-03-01 21:17
                    回复
                      张双强
                      var
                      a:integer;
                      begin
                      randomize
                      a:randmon(7)+1;
                      written(a*100);
                      readln
                      end.


                      11楼2012-03-01 21:17
                      回复