|
|
DataMuseum.dkPresents historical artifacts from the history of: RC4000/8000/9000 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about RC4000/8000/9000 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 1536 (0x600)
Types: TextFile
Names: »ramfsmx«
└─⟦667bb35d6⟧ Bits:30007480 RC8000 Dump tape fra HCØ.
└─⟦4334b4c0b⟧
└─⟦this⟧ »ramfsmx«
clear user ramfsm
ramfsm=set 1 disc5
scope user ramfsm
ramfsm=algol
\f
RAMAN ANALYSE FSM
external procedure ramfsm(navn1,navn2,I,N);
long array navn1,navn2; integer I,N;
begin integer i,j,k,t,p,q,r,n; integer array t1,t2(1:10);
real sum;
zone z1,z2(128,1,stderror);
open(z1,4,navn1,0); inrec(z1,128); t:=z1(2);
open(z2,4,navn2,0); outrec(z2,128);
for j:=1 step 1 until 128 do z2(j):=z1(j); z2(51):=I;
for i:=1 step 1 until 10 do t2(i):=0; t2(1):=z1(1);
changetail(navn2,t2);
close(z1,true); close(z2,true);
sum:=0; I:=I*10; p:=I/2; q:=2*p+1;
n:=(t-q)//N; r:=t-n*N-q;
begin array A(1:q+N);
get(navn1,1,q,A);
for i:=1 step 1 until q do sum:=A(i)+sum;
for i:=1 step 1 until p+1 do A(i):=sum/q;
put(navn2,1,p+1,A);
for k:=0 step 1 until n-1 do
begin
get(navn1,k*N+1,(k+1)*N+q,A);
for i:=1 step 1 until N do
begin sum:=sum-A(i)+A(i+q);
A(i):=sum/q;
end;
put(navn2,k*N+p+2,(k+1)*N+p+1,A);
end k;
get(navn1,k*N,t,A);
for i:=1 step 1 until r do
begin sum:=sum-A(i)+A(i+q); A(i):=sum/q;
end;
put(navn2,k*N+p+2,k*N+p+1+r,A);
for i:=1 step 1 until p do A(i):=sum/q;
put(navn2,k*N+p+2+r,t,A);
end blok;
slut: end; end
\f
▶EOF◀