Re: Need help to write routine - Please

new topic     » goto parent     » topic index » view thread      » older message » newer message

On Fri, 29 Aug 2003 21:36:08 +1000, Tony Steward
<tsteward at dodo.com.au> wrote:

>I need help writing a routine.

Enjoy:

constant X=3D'X'
sequence serial,mask,permit
serial=3D{0,5,3,4,1,1}
mask  =3D{0,X,0,X,X,0}	--{0,X,0,X,0,0}
permit=3D{0,
	  	 {1,3,7,9},
		    0,
		     {0,2,6,8},
			   {3,5,7,9},	--0
				  0}
function key(integer n)
--returns the nth key
integer w
	n-=3D1
	for i=3Dlength(mask) to 1 by -1 do
		if mask[i]=3DX then
			w=3Dremainder(n,length(permit[i]))
			n=3Dfloor(n/length(permit[i]))
			serial[i]=3Dpermit[i][w+1]
		end if
	end for
	return serial
end function
for i=3D1 to 64 do	-- 16 do	-- * of length(permit[i])!=3D0
	?key(i)
end for
if getc(0) then end if

Pete

new topic     » goto parent     » topic index » view thread      » older message » newer message

Search



Quick Links

User menu

Not signed in.

Misc Menu