-- -*- mode: eiffel -*- -- $Id: hash.se,v 1.3 2001/01/18 20:57:05 doug Exp $ -- http://www.bagley.org/~doug/shootout/ class HASH creation make feature -- Initialization make is local n : INTEGER i, j, c : INTEGER s : STRING ht : DICTIONARY[INTEGER, STRING] arg: ARGUMENTS do n := argument(1).to_integer !!ht.with_capacity(n); from i := 1 until i > n loop s := i.to_hexadecimal from j := 1 until s @ j /= '0' loop j := j + 1 end ht.put (i, s.substring(j,s.count)) i := i+1 end from i := n until i = 0 loop s := i.to_string if ht.has (s) then c := c + 1 end i := i - 1 end print (c.out + "%N") end end -- class HASH