Delphi-PRAXiS
Seite 3 von 7     123 45     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Neuen Beitrag zur Code-Library hinzufügen (https://www.delphipraxis.net/33-neuen-beitrag-zur-code-library-hinzufuegen/)
-   -   Frage zu Rezeptsammlung-> Suchfunktion durch Array funktioniert nicht (https://www.delphipraxis.net/194483-frage-zu-rezeptsammlung-suchfunktion-durch-array-funktioniert-nicht.html)

TiGü 28. Nov 2017 14:45

AW: Frage zu Rezeptsammlung-> Suchfunktion durch Array funktioniert nicht
 
Zitat:

Zitat von hoika (Beitrag 1387369)
Hallo,
auch mit dem break ist der Code nicht so schön lesbar.

Delphi-Quellcode:
var
  bGefunden: Boolean;
begin
  bGefunden:= False;
  for do
  begin
    if bla then
    begin
      bGefunden := True;
      break;
    end;
  end;

  if bGefunden
    then Label9.Caption := 'gefunden'
    else Label9.Caption := 'nicht gefunden';

Das ist genau die Art von Variablenbenennung und Codeformatierung, die man eigentlich nicht zeigen sollte. :roll:

Klaus01 28. Nov 2017 14:45

AW: Frage zu Rezeptsammlung-> Suchfunktion durch Array funktioniert nicht
 
und vielleicht noch auf Gleichheit prüfen.
Es soll ja nicht Vanille gefunden werden - sondern Vanillekipferl.

Grüße
Klaus

Lisaaaa 28. Nov 2017 14:49

AW: Frage zu Rezeptsammlung-> Suchfunktion durch Array funktioniert nicht
 
Hast du einen passenden Quelltext ? Problem: Eingabe von 'hjb jj' -> 'nicht vorh.' Danach sofortige Eingabe 'Apfelrotkohl' -> 'nicht vorhanden'...Habe den eindruck, das Programm führt nichts aus nachdem man erneut auf button klickt und es eig sagen müsste 'vorh.'

LTE5 28. Nov 2017 14:52

AW: Frage zu Rezeptsammlung-> Suchfunktion durch Array funktioniert nicht
 
Hier wurde schon einer geschrieben

Zitat:

Zitat von Delphi.Narium (Beitrag 1387371)
Delphi-Quellcode:
Label9.Caption:='Das Rezept ist nicht in der Rezeptsammlung vorhanden!';
For s:=1 to 25 Do
begin
  If Pos (Uppercase(Gesucht),UpperCase(Rezept[s]))<> 0 Then
  begin
    Label9.Caption:='Das Rezept ist in der Rezeptsammlung vorhanden!';
    Break;
  end;
end;


Lisaaaa 28. Nov 2017 14:57

AW: Frage zu Rezeptsammlung-> Suchfunktion durch Array funktioniert nicht
 
Geht nicht. es sagt, dass es nicht vorhanden ist, egal ob es so ist oder nicht :(

TiGü 28. Nov 2017 15:06

AW: Frage zu Rezeptsammlung-> Suchfunktion durch Array funktioniert nicht
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von Lisaaaa (Beitrag 1387377)
Geht nicht. es sagt, dass es nicht vorhanden ist, egal ob es so ist oder nicht :(

Zeig uns doch mal deine Konstanten (Apfelrotkohl, Currywurst...etc.).

Denn wenn ich das mal schnell runtertippe und die einzelnen Rezepte als Strings anstatt String-Konstanten schreibe, dann geht's:

hoika 28. Nov 2017 15:08

AW: Frage zu Rezeptsammlung-> Suchfunktion durch Array funktioniert nicht
 
Hallo,
und dann bitte noch 2 Stellen optimieren

alt:
For s:=1 to 25 do
If Pos (Uppercase(Gesucht),UpperCase(Rezept[s]))<> 0 Then

neu:
For s:=Low(Rezept) to High(Rezept) do
If AnsiUpperPos(Gesucht,Rezept[s])<> 0 Then

Dann musst du bei einem neuen Rezept die 25 nicht jedesmal ändern.

Und Zählvariablen heissen immer i
(Das war ein Scherz ;) )

Delphi.Narium 28. Nov 2017 15:12

AW: Frage zu Rezeptsammlung-> Suchfunktion durch Array funktioniert nicht
 
Delphi-Quellcode:
var
  Rezept  : array[1..25] of string;
  i       : Integer;
  Gesucht : String;
  Gefunden : Boolean;
begin
  Gesucht := UpperCase(Edit1.text);
  ...
  i := Low(Rezept);
  repeat
    Gefunden := Pos(Gesucht,UpperCase(Rezept[i])) <> 0;
    Inc(i);
  until Gefunden or (i > High(Rezept));
  Label9.Caption:= Format('Das Rezept ist %sin der Rezeptsammlung vorhanden!',[IfThen(Gefunden,'','nicht ')]);
end;
Die Variante aus http://www.delphipraxis.net/1387370-post19.html liefert bei mir korrekte Ergebnisse, wenn ich (ebenso wie TiGü) aus den Konstanten Zeichenfolgen mache.

Lisaaaa 28. Nov 2017 15:17

AW: Frage zu Rezeptsammlung-> Suchfunktion durch Array funktioniert nicht
 
String exceeds line wird mir angezeigt

Delphi.Narium 28. Nov 2017 15:18

AW: Frage zu Rezeptsammlung-> Suchfunktion durch Array funktioniert nicht
 
Wo?


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:50 Uhr.
Seite 3 von 7     123 45     Letzte »    

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