RosettaCodeData/Task/Odd-word-problem/Seed7/odd-word-problem.seed7

36 lines
734 B
Text
Raw Permalink Normal View History

2015-02-20 09:02:09 -05:00
$ include "seed7_05.s7i";
include "chartype.s7i";
const func char: doChar (in boolean: doReverse) is func
result
var char: delimiter is ' ';
local
var char: ch is ' ';
begin
ch := getc(IN);
if ch in letter_char then
if doReverse then
delimiter := doChar(doReverse);
write(ch);
else
write(ch);
delimiter := doChar(doReverse);
end if;
else
delimiter := ch;
end if;
end func;
const proc: main is func
local
var char: delimiter is ' ';
var boolean: doReverse is FALSE;
begin
repeat
delimiter := doChar(doReverse);
write(delimiter);
doReverse := not doReverse;
until delimiter = '.';
writeln;
end func;