DataMuseum.dk

Presents historical artifacts from the history of:

RC4000/8000/9000

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about RC4000/8000/9000

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦0f75f78d0⟧ TextFile

    Length: 3072 (0xc00)
    Types: TextFile
    Names: »stat«

Derivation

└─⟦00964e8f7⟧ Bits:30007478 RC8000 Dump tape fra HCØ.
    └─⟦b2ec5d50f⟧ 
        └─⟦this⟧ »stat« 

TextFile


begin
  real procedure fac(n);
  value n;
  integer n;
  begin
    real b;
    integer fac1;
    b:=1.0;
    for fac1:=1 step 1 until n do b:=b*fac1;
    fac:=b;
  end;
  real procedure possion(værdi,a2);
  value værdi;
  integer værdi,a2;
  begin
    real a1,a3;
    integer pos1,pos2;
    write(out,snit);
    a1:=1/snit;
    possion:=(((a1)**værdi)/fac(værdi))*exp(-a1);
  end;
  real procedure ekspfordel(a);
  value a;
  integer a;
  begin
    a:=a*10;
    if a = 0 then ekspfordel:=0 else
    ekspfordel:= 1-exp(-(a/snit));
  end;
  real snit,fordel1;
  integer nedre,øvre,antal,k,sum,procnr;
  for procnr:=1 step 1 until 4 do
  begin
    sum:=0;
    read(in,nedre);read(in,øvre);
    read(in,k);
    if k <> 1 then read(in,snit);
    antal:=øvre-nedre;
    begin
      integer i;
      integer array observationer(nedre:øvre);
      for i:=nedre step 1 until øvre do
      begin
        read(in,observationer(i));
        sum:=sum+observationer(i);
      end;
      write(out,<:<12>Sandsynlighedsfordeling for CPU-tid i :>);
      case procnr of
      begin
        write(out,<: input proces : :>);
        write(out,<: søge proces : :>);
        write(out,<: opslags proces : :>);
        write(out,<: output proces : :>);
      end;
      write(out,<:<10>:>);
      write(out,<:CPU-tid      nr    sandsynlighed :>);
      if k <> 1 then 
      write(out,<:  Eksponentialfordeling:>);
      write(out,<:<10>:>);
      for i:=nedre step 1 until øvre do
      begin
        write(out,<:<10>:>);
        if i = nedre then
        write(out,<:...:>,<: - :>,<<ddd>,nedre) else
        begin
          if i = øvre then
          write(out,<<ddd>,if k=1 then i-1 else (i-1)*10,<: - ...:>) else
          begin
            write(out,<<ddd>,if k=1 then i-1 else (i-1)*10,
            <: - :>,<<ddd>,if k=1 then i else i*10);
          end;
        end;
        write(out,<:  :>,<<ddddd>,observationer(i),<:  :>);
        write(out,<<dd.dd>,(observationer(i)/sum)*100);
        if k<> 1 then
        begin
          if i= nedre then
          write(out,<:  :>,<<dd.dd>,ekspfordel(i)*100) else
          begin
            if i = øvre then 
            write(out,<:  :>,<<dd.dd>,(1-ekspfordel(i))*100) else
            write(out,<:  :>,<<dd.dd>,(ekspfordel(i)-ekspfordel(i-1))*100);
          end;
        end;
      end;
      write(out,<:<10>sum = :>,sum);
    end;
  end;
end;
▶EOF◀