Forum: Algorithmen, Datenstrukturen und Klassendesign
by Amateurprofi,
10. Jun 2021
Mich hat die Funktion "longestNumber" aus #42 interessiert.
Wegen des Kommentars
wollte ich das mal testen.
Hierfür habe ich mit von www.geonames.org die Datei "allCountries.txt" herunter geladen.
Das ist eine UTF8-codierte Datei (ohne BOM), die ca. 12 Mio LF-terminierte Zeilen enthält.
Die Dateigröße ist 1,563,600,457 Bytes.
Die habe ich in einen AnsiString geladen, auf den ich die...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by Amateurprofi,
9. Jun 2021
Schade, ich hätte mich gerne bei Gelegenheit damit befasst.
Forum: Algorithmen, Datenstrukturen und Klassendesign
by Amateurprofi,
8. Jun 2021
Da habe ich die Aufgabenstellung anders verstanden.
Mein Verständnis war dass die Länge der längsten Ziffernfolge zurückgegeben werden soll.
Forum: Algorithmen, Datenstrukturen und Klassendesign
by Amateurprofi,
7. Jun 2021
Die beiden in #38 gezeigten Funktionen machen genau das, geben also die Länge der längsten Ziffernfolge zurück.
Also nimm eine der beiden Funktionen (besser die untere), ändere den Namen auf "longestNumber", beim Parameter entferne das "const" und ändere das Funktionsergebnis auf "Word".
Stellt sich mir die Frage, was passiert, wenn du einen String übergibst, bei dem die längste Ziffernfolge...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by Amateurprofi,
6. Jun 2021
Hallo Michael,
Zu "#37 liefert wie in #26 verlangt den String, #38 die Position"
Nee, #28 liefert die Länge der Ziffernfolge
Um die Ziffernfolge selbst zu liefern, bedarf es einiger kleiner Änderungen.
Hier die Funktion, die die Ziffernfolge liefert
FUNCTION LongestCipherSequence(const S:String):String;
var MaxLen:Integer; P,PS,PSMax,PStart:PChar;
begin
MaxLen:=0;
PStart:=PChar(S);
Forum: Algorithmen, Datenstrukturen und Klassendesign
by Amateurprofi,
6. Jun 2021
Oder so:
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;