Hallöchen ich bins wieder
Ich versuche alle Möglichkeiten von %s zu finden. Aber nich wie gewöhlich a..z sondern a..A
Mein ungefährer Ansatz:
Ich nehme an der "Mod" Operator "verrechnet" im wahrsten Sinne de Worts die 2. Spalte aus der Beispiel Matix.
Oder wie seht Ihr das?
Delphi-Quellcode:
program Demo;
{$APPTYPE CONSOLE}
uses
SysUtils;
function CaseCorrection(var AStr: String; ACharToCase: Integer): String;
var
S: String;
X: Integer;
begin
if ACharToCase > Length(AStr) then
ACharToCase := ACharToCase mod Length(Astr);
S := AStr[ACharToCase];
if S = LowerCase(S) then
S := UpperCase(S)
else
S := LowerCase(S);
Insert(S, AStr, ACharToCase);
Delete(AStr, ACharToCase+1, 1);
Result := Trim(AStr);
end;
const
StrToCorrection = 'ABC';
// aBC, abC, abc
// AbC, Abc, aBc
// AbC, ABc, ABC
var
S: String;
I, iCount: Integer;
begin
S := StrToCorrection;
iCount := Length(StrToCorrection) * Length(StrToCorrection);
for I := 1 to iCount do
writeln( CaseCorrection(S, I) );
readln;
end.