Einsteigerfragen zur PROFAN Programmierung
  Suchen
 Zurück zur Übersicht
 AutorThema: If then
Stefan Müller
Datum:26.09.02 14:35 Antwortenals Email verschicken (panapaul@web.de) 


Hat jemand eine Idee wie ich min. 2 Vergleiche machen kann.

Also
if
@lt(heute$,datum$) AND ??? @equ(heute$, datum$)
Funktion ausführen

die Funktion über Elseif zu realisieren ist zu umständlich, da in Funktion 1 noch mal ein Vergleich mit 2 Bedingungen stattfinden muß.

Danke Stefan


Roland G. Hülsmann
Datum:26.09.02 15:46 Antwortenals Email verschicken (rgh-soft@t-online.de) 


Hallo,

hier wäre das OR angebracht, wenn Du erreichen möchtest, daß die Funktion sowohl ausgeführt wird, wenn das Datum heute ist, als auch dann, wenn es kleiner als heute ist. In älteren PROFAN-Versionen:
if @or(@lt(heute$,datum$),@equ(heute$,datum$))
  <Funktion ausführen>
endif

Aktuell mit Operatoren (ab Version 6.5):
if (heute$ < datum$) or (heute$ = datum$)
  <Funktion ausführen>
endif

Oder noch besser:
if heute$ <= datum$
  <Funktion ausführen>
endif

Gruß
Roland




Jörg Sellmeyer
Datum:26.09.02 22:21 Antwortenals Email verschicken (joerse@gmx.de) 


Hallo,
Man kann's in diesem Fall auch einfach umdrehen:

IfNot Gt(heute$,Datum$)
Funktion
...

Übrigens testest Du so nur auf die Länge des Strings. Der Inhalt spielt keine Rolle.
"23.7.2002" und "12.1.1900" sind für die Abfrage gleich.

Gruß
Jörg


Stefan Müller
Datum:27.09.02 09:10 Antwortenals Email verschicken (panapaul@web.de) 


Hallo!

Danke für die Hilfe. Ich wußte nicht, wie ich die Bedingungen verknüpfen kann. Und natürlich hat auch Jörg Recht, aber mein Vergleich heißt natürlich @gt$(heute$, datum$). Dann wird auch der Inhalt richtig verglichen.

Danke an alle! :-)

Programm läuft jetzt.


Jörg Sellmeyer
Datum:27.09.02 11:09 Antwortenals Email verschicken (joerse@gmx.de) 


Hallo Roland,
Was vergleicht eigentlich GT$ genau? Ich dachte immer die Länge.
Oder hat es etwas mit den Ansiwerten zu tun ?
Gruß
Jörg


Roland G. Hülsmann
Datum: 27.09.02 11:20 Antwortenals Email verschicken (rgh-soft@t-online.de) 


Hallo Jörg,

ja, ich vergleiche die Inhalte der Strings auf Ansi-Basis, so wie es eigentlich alle Programmiersprachen halten, die Stringvergleiche erlauben. Die Länge spielt nur dann eine Rolle, wenn der Anfang des längeren Strings identisch mit dem kürzeren String ist, etwa:
s1$="abc"
s2$="abcde"

In diesem Fall, gilt der längere String als der größere, da jedes Zeichen ja größer als Nichts ist.

Gruß
Roland



 Zurück zur Übersicht
 

 Ein kostenloses WebMart Forum
WebMart Homepage Tools kostenlos
Shortwin - denn Glück ist kein Zufall!