program last_word;

{$mode objfpc}{$H+}

type TCharSet = set of Char;

function LastWord(const aPhrase: string; separators: TCharSet): String;
var L, p: integer;
begin
	L := Length(aPhrase);

	if (L=0) or (separators=[]) then Exit('');

  for p := L downto 1 do
	if not (aPhrase[p] in separators)
	then
		Result := aPhrase[p] + Result
	else Break;
end;

var s: string;
begin
	repeat
	  Write('Enter a phrase (or nothing to Quit): ');
	  ReadLn(s);
	  WriteLn('The last word of "', s, '" is: "', LastWord(s, [' ']), '"');
	until (s='')
end.
