Присал такое:
Код:
procedure IncTestID(var AID : String; Num : Integer);
type
TCharSet = 'A'..'Z';
var
C : TCharSet;
I : Integer;
begin
If AID = '' Then
Begin
AID := 'A';
Exit;
End;
C := AID[Num];
If C = 'Z'
Then
Begin
C := 'A';
If Num = 1 Then
Begin
AID := 'A' + AID;
For I := 1 To Length(AID) Do AID[i] := 'A';
WriteLn('Iteration: ' + AID);
end
Else IncTestID(AID,Num-1);
End
Else
Begin
C := Succ(C);
End;
AID[Num] := C;
end;
procedure TMyApplication.Exec;
var
V : String;
begin
V := '';
While V < 'ZZZZ' Do
Begin
IncTestID(V,Length(V));
WriteLn(V);
End;
end;
только больше, чем на 3х лучше не пробовать. Уже на 4 работает очень долго...