Delphi FAQ

Jak sprawdzić czy wyrazy są anagramami

Dominik

Anagram czyli wyraz utworzony przez przestawienie liter lub sylab innego wyrazu.

function IsAnagram(Pattern, Input: string):Boolean;
var
  I, X : Integer;
begin
  Result := False;
  if Length(Pattern) <> Length(Input) then Exit;
  for I := 1 to Length(Pattern) do
  begin
    X := Pos(Pattern[I], Input);
    if X > 0 then
      Delete(Input, X, 1)
    else
      Exit;
  end;
  Result := True;
end; 
FAQ

0 komentarzy