Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Probleme mit if-Bedingung (https://www.delphipraxis.net/13165-probleme-mit-if-bedingung.html)

Pseudemys Nelsoni 12. Dez 2003 09:58


Probleme mit if-Bedingung
 
hoi,

ich habe folgendes:

Delphi-Quellcode:
if not CountWords(s, ' ') < 4 then // wenn "CountWords(s, ' ')" nicht kleiner als 4
begin
   showmessage(IntToStr(CountWords(s, ' '))); // das ergebnis ist 3
end;

wie kann die bedingung erfüllt sein, wenn "CountWords(s, ' ')" 100% 3 ausgibt


btw: ein thema für den thread fällt mir nicht ein.

Smokey 12. Dez 2003 10:05

Re: wo ist hier der fehler?
 
Mach mal klammern um die If Bedingung. Bei NOT immer zu empfehlen !

Code:
if not ( CountWords(s, ' ') < 4 ) then
Damn wie mach ich etwas rot was schon im code-tag steht?

r_kerber 12. Dez 2003 10:06

Re: wo ist hier der fehler?
 
Hallo Pseudemys Nelsoni,

kannst Du Deiner Anfrage bitte eine aussagekräftigeren Titel geben?
Und was macht CountWords eigentlich?

Pseudemys Nelsoni 12. Dez 2003 10:06

Re: wo ist hier der fehler?
 
habs nochmal getestet.... der code nach der bedingung wird ausgeführt, egal ob ich da "not" habe oder nicht...hmm, da ist kein fehler, theoretisch müsste das mit "not" gehen das der code NICHT ausgeführt wird..

Pseudemys Nelsoni 12. Dez 2003 10:10

Re: wo ist hier der fehler?
 
hi

@Smokey: mit "if (not CountWords(s, ' ') < 4) then" klappt es leider auch nicht

@r_kerber: mir fällt kein titel ein, s.o. Wenn du ne idee hast änder ichs gern *g*

Zitat:

Und was macht CountWords eigentlich?

zählt die wörter in meinem string

Smokey 12. Dez 2003 10:11

Re: wo ist hier der fehler?
 
Ja wie überhaupt?

Dein countWords liefert 3 und du willst die messagebox sehen?

Code:
not countwords() < 4
heisst ja, dass er alles in der IF bedingung ausführt wenn CountWord >= 4 ist.

Ausserdem sollte die klammer hinter dem NOT aufgehen, ka wie genau delphi da ist, aber so klappts bei mir nunmal

Pseudemys Nelsoni 12. Dez 2003 10:13

Re: wo ist hier der fehler?
 
macht mal das:

Delphi-Quellcode:
  if (not 3<4) then
  ShowMessage('hi');

in ein neues project (nur wer lust hat)...da wird das showmessage auch ausgeführt, obwohl die bedingung "wenn 3 nicht kleiner als 4" ist

r_kerber 12. Dez 2003 10:13

Re: wo ist hier der fehler?
 
Zitat:

Zitat von Pseudemys Nelsoni
Zitat:

Und was macht CountWords eigentlich?

zählt die wörter in meinem string

Ist die Funktion von Dir? Was liefert die die tatsächlich zurück?

r_kerber 12. Dez 2003 10:15

Re: wo ist hier der fehler?
 
Zitat:

Zitat von Pseudemys Nelsoni
Delphi-Quellcode:
  if (not 3<4) then
  ShowMessage('hi');

Was haätst Du davon:
Delphi-Quellcode:
   if not (3<4) then
  ShowMessage ('hi');

Pseudemys Nelsoni 12. Dez 2003 10:15

Re: wo ist hier der fehler?
 
hm, egal wo ich die klammern hab, macht irgendwie keine änderung

Zitat:

heisst ja, dass er alles in der IF bedingung ausführt wenn CountWord >= 4 ist.
jo! die bedingung soll nur erfüllt werden wenn 4 oder grösser... da das ergebnis von "countwords" = 3 ist, dürfte das showmessage nicht ausgeführt werden, das wird es aber!


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:07 Uhr.
Seite 1 von 2  1 2      

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