AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Probleme mit if-Bedingung

Ein Thema von Pseudemys Nelsoni · begonnen am 12. Dez 2003 · letzter Beitrag vom 12. Dez 2003
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#1

Probleme mit if-Bedingung

  Alt 12. Dez 2003, 10:58
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.
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Benutzerbild von Smokey
Smokey

Registriert seit: 10. Nov 2003
Ort: Puerto de la Cruz
158 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: wo ist hier der fehler?

  Alt 12. Dez 2003, 11:05
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?
Greif dir ein gutes Stück Fleisch auf deinem Weg nach draussen !!!
  Mit Zitat antworten Zitat
Benutzerbild von r_kerber
r_kerber

Registriert seit: 11. Feb 2003
Ort: Trittau
3.538 Beiträge
 
Delphi XE Professional
 
#3

Re: wo ist hier der fehler?

  Alt 12. Dez 2003, 11:06
Hallo Pseudemys Nelsoni,

kannst Du Deiner Anfrage bitte eine aussagekräftigeren Titel geben?
Und was macht CountWords eigentlich?
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#4

Re: wo ist hier der fehler?

  Alt 12. Dez 2003, 11:06
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..
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#5

Re: wo ist hier der fehler?

  Alt 12. Dez 2003, 11:10
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
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Benutzerbild von Smokey
Smokey

Registriert seit: 10. Nov 2003
Ort: Puerto de la Cruz
158 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: wo ist hier der fehler?

  Alt 12. Dez 2003, 11:11
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
Greif dir ein gutes Stück Fleisch auf deinem Weg nach draussen !!!
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#7

Re: wo ist hier der fehler?

  Alt 12. Dez 2003, 11:13
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
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Benutzerbild von r_kerber
r_kerber

Registriert seit: 11. Feb 2003
Ort: Trittau
3.538 Beiträge
 
Delphi XE Professional
 
#8

Re: wo ist hier der fehler?

  Alt 12. Dez 2003, 11:13
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?
  Mit Zitat antworten Zitat
Benutzerbild von r_kerber
r_kerber

Registriert seit: 11. Feb 2003
Ort: Trittau
3.538 Beiträge
 
Delphi XE Professional
 
#9

Re: wo ist hier der fehler?

  Alt 12. Dez 2003, 11:15
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');
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#10

Re: wo ist hier der fehler?

  Alt 12. Dez 2003, 11:15
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!
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:23 Uhr.
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