Registriert seit: 17. Nov 2005
Ort: Hamburg
1.071 Beiträge
Delphi XE2 Professional
|
AW: Erstellung einer Funktion
6. Jun 2021, 05:35
Oder so:
Delphi-Quellcode:
FUNCTION LongestCipherSequence(const S:String):Integer;
var N:Integer; P:PChar;
begin
Result:=0;
P:=PChar(S);
if P<>Nil then
repeat
case P^ of
#0 : Break;
'0'..'9' : begin
N:=1;
Inc(P);
while P^ in ['0'..'9'] do begin
Inc(N);
Inc(P);
end;
if N>Result then Result:=N;
end;
else Inc(P);
end;
until False;
end;
Oder um Michaels Hinweis aufzugreifen:
Delphi-Quellcode:
FUNCTION LongestCipherSequence2(const S:String):Integer;
var P,PS:PChar;
begin
Result:=0;
P:=PChar(S);
if P<>Nil then
repeat
case P^ of
#0 : Break;
'0'..'9' : begin
PS:=P;
Inc(P);
while P^ in ['0'..'9'] do Inc(P);
if P-PS>Result then Result:=P-PS;
end;
else Inc(P);
end;
until False;
end;
Delphi-Quellcode:
PROCEDURE TMain.Test;
const S='1A22B333C4444D55555E';
begin
ShowMessage(IntToStr(LongestCipherSequence(S)));
ShowMessage(IntToStr(LongestCipherSequence2(S)));
end;
Gruß, Klaus
Die Titanic wurde von Profis gebaut,
die Arche Noah von einem Amateur.
... Und dieser Beitrag vom Amateurprofi....
|