Ну как-нибудь так проверить можно.
Код:
function checkPass(s: string) : boolean;
var hasNum, hasLetter: boolean;
i: integer;
begin
hasNum := false;
hasLetter := false;
for i := 1 to length(s) do
begin
if s[i] >= '0' and s[i] <= '9' then
hasNum := true;
if (s[i] >= 'A' and s[i] <= 'Z') or (s[i] >= 'a' and s[i] <= 'z') then
hasLetter := true;
if hasNum and hasLetter then
break;
end;
result := hasNum and hasLetter;
end;