Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   Delphi String buchstabenweise in array einlesen (https://www.delphipraxis.net/161016-string-buchstabenweise-array-einlesen.html)

Luckie 13. Jun 2011 01:30

AW: String buchstabenweise in array einlesen
 
Also, wenn ihr ihn verwirren wollt, dann habt ihr das sehr wahrscheinlich mittlerweile geschafft. :?

himitsu 13. Jun 2011 01:31

AW: String buchstabenweise in array einlesen
 
Nur noch Begin und End ersetzt und man hätte einen typischen C-Code :lol:

Stevie 13. Jun 2011 01:36

AW: String buchstabenweise in array einlesen
 
Zitat:

Zitat von Luckie (Beitrag 1106037)
Also, wenn ihr ihn verwirren wollt, dann habt ihr das sehr wahrscheinlich mittlerweile geschafft. :?

Du meinst dich, nicht ihn, oder? :twisted:

Zitat:

Zitat von himitsu (Beitrag 1106038)
Nur noch Begin und End ersetzt und man hätte einen typischen C-Code :lol:

Pff, du erkennst ja nur nicht die Kapazität und Flexibilität dieses Codes ;)

mkinzler 13. Jun 2011 09:46

AW: String buchstabenweise in array einlesen
 
Ihr seid schon komische Vögel, der Te offenbart, dass ihm das grundlegende Verständnis fehlt und ihr offenbart ihm eure "speziallösungen", die er bestimmt nicht versteht.

DeddyH 13. Jun 2011 11:33

AW: String buchstabenweise in array einlesen
 
Meine Rede :thumb:

Blup 14. Jun 2011 11:53

AW: String buchstabenweise in array einlesen
 
Einfach an die Aufgabenstellung halten, offensichtlich soll der Umgang mit dyn. Array geübt werden:
Zitat:

Schreib ein Programm welches ein eingegebenes Wort buchstabenweise in ein dyn. Array einliest.
Delphi-Quellcode:
type
  TCharDynArray = array of Char;

function StringToDynArray(const AValue: string): TCharDynArray;
begin
  // Strings beginnen bei Index 1, Arrays bei 0   => wichtiges Lernziel
  SetLength(Result, Length(AValue));
  for i := 0 to Length(Result) - 1 do
    Result[i] := AValue[i + 1];
end;
Zitat:

Nach Eingabe eines Buchstabens soll ausgegeben werden wie oft dieser Buchstabe im eingegebenen Wort vorkommt.
Delphi-Quellcode:
// Array-Parameter immer als "const" oder "var" übergeben, sonst wird beim Funktionsaufruf eine Kopie angelegt
function GetBuchstabenAnzahl(const ACharDynArray: TCharDynArray; AValue: Char): Integer;
begin
  Result := 0;
  for i := 0 to Length(ACharDynArray) - 1 do
  begin
    if ACharDynArray[i] = AValue then
      Result := Result + 1;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  a: TCharDynArray;
  s: string;
  n: Integer;
begin
  // Text der durchsucht werden soll
  s := edit1.text;
  if Length(s) = 0 then
  begin
    MessageBox('Geben Sie einen Text an der durchsucht werden soll!', Caption);
    Exit;
  end;
  a := StringToDynArray(s);

  // Buchstabe der gesucht wird
  s := edit2.text;
  if Length(s) = 0 then
  begin
    MessageBox('Geben Sie einen Buchstaben an der gesucht werden soll!', Caption);
    Exit;
  end;
 
  if Length(s) > 1 then
  begin
    MessageBox('Geben Sie nur einen Buchstaben an der gesucht werden soll!', Caption);
    edit2.text := '';
    Exit;
  end;

  n := GetBuchstabenAnzahl(a, s[1]);
  s := Format('Der Buchstabe %s ist %d mal enthalten.', [s, n]);
  MessageBox(s, Caption);
end;

Neutral General 14. Jun 2011 12:01

AW: String buchstabenweise in array einlesen
 
Zitat:

Zitat von Stevie (Beitrag 1106036)
[...]
Sorry, ich konnte nicht widerstehen. :oops: :stupid:

Der Code ist ja einfach nur .. iih :pale:
Und dazu noch inklusive Speicherleck :duck:

Stevie 14. Jun 2011 12:25

AW: String buchstabenweise in array einlesen
 
Zitat:

Zitat von Neutral General (Beitrag 1106292)
Der Code ist ja einfach nur .. iih :pale:
Und dazu noch inklusive Speicherleck :duck:

Ja, mit lambdas und linq syntax säh's schicker aus 8-)

Speicherleck stimmt, hab nicht mehr an das Problem mit Interface als Functionsergebnis gedacht, lokale Variable wär die Lösung :stupid:


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:06 Uhr.
Seite 3 von 3     123   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz