aber das result hab ich ja als string und ich kopiere das neu errechnete ja dann immer den string result rein damit das vorherige erhalten bleibt.
Falsch,
Result := ...;
weißt Result immer einen komplett neuen Wert zu ... das erste Zeichen des String
c.
Und dabei geht natürlich der vorherige Inhalt von Result verloren.
Soll das neue Zeichen angehängt werden, dann mußt du entweder Result nehmen und c anhängen (
Result + c
) und das Ergebnis an Result übergeben (siehe mein Beispiel in #6)
oder du nimmst
Insert und fügst das c hinten ein.