-- -*- mode: eiffel -*-
-- $Id: wc.se,v 1.1 2001/05/14 17:39:13 doug Exp $
-- http://www.bagley.org/~doug/shootout/
class WC
creation make
feature
make is
local
nl, nw, nc, state: INTEGER;
c: CHARACTER;
do
nl := 0
nw := 0
nc := 0
state := 0
from
io.read_character
until
io.end_of_input
loop
c := io.last_character
nc := nc + 1
if c = '%N' then
nl := nl + 1
end
if c = ' ' or c = '%N' or c = '%T' then
state := 0
else
if state = 0 then
state := 1
nw := nw + 1
end
end
io.read_character
end
std_output.put_integer(nl)
std_output.put_character(' ')
std_output.put_integer(nw)
std_output.put_character(' ')
std_output.put_integer(nc)
std_output.put_character('%N')
end
end