Hallo Harry,
ein Wort mit drei Buchstaben hat mitnichten 9 (3 * 3) Variationen:
Delphi-Quellcode:
uses
StrUtils;
procedure VariateCase(s: string; sl: TStrings);
var
i, n: Integer;
begin
sl.BeginUpdate;
sl.Clear;
for n := 0 to Pred(1 shl Length(s)) do
begin
for i := Length(s) downto 1 do
s[i] := IfThen(Odd(n shr Pred(i)), AnsiUpperCase(s[i]), AnsiLowerCase(s[i]))[1];
sl.Add(s);
end;
sl.EndUpdate;
end;
Grüße vom marabu