INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Verschiedene Cases mit Boolean-Werte ansteuern



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

26.05.2011, 23:49
Beitrag #1

ChelseaSmile Offline
LVF-Neueinsteiger


Beiträge: 5
Registriert seit: Apr 2011

2010
2011
DE_EN



Verschiedene Cases mit Boolean-Werte ansteuern
Hallo zusammen,
folgendes, ich möchte einen variablen Wert x mit einem vorgegebenem Wert y vergleichen.
Nun soll unterschieden werden:
x=y
x<y
x>y
Je nachdem welcher Fall auftritt, soll eine andere Aktion erfolgen.

Wie mache ich das am Besten?

Meine Überlegung:
So ein Vergleichsoperator handelt ja als Boolean (True/False), nehme ich an, richtig?
Somit könnte ich ja, je nachdem welcher richtig ist, einen anderen Case einer Case-Struktur ansteuern.
Doch wie geht das? Welches Element muss zwischen Vergleichsoperatoren und Case-Struktur schalten, damit diese "merkt", welcher Case ausgeführt werden soll?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
27.05.2011, 05:31 (Dieser Beitrag wurde zuletzt bearbeitet: 27.05.2011 05:33 von Dennis.Moser.)
Beitrag #2

Dennis.Moser Offline
Administrator
Administrators

Beiträge: 3.045
Registriert seit: Aug 2004

5.1 : 7.1 : 8.x : 20xx
1997
DE_EN

57589
Deutschland
RE: Verschiedene Cases mit Boolean-Werte ansteuern
Hi,

dann versuchs doch einmal so ?!

   

Wissen ist das einzige Gut das sich vermehrt, wenn man es teilt!

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!

BC: 14vqy6mgfswpX6z7HLVxk1h3sHAvzE4aZG
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
27.05.2011, 07:45
Beitrag #3

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
RE: Verschiedene Cases mit Boolean-Werte ansteuern
Wie Du siehst, kann man an den Case-Selektor nicht nur boolsche Typen anschließen. Weitere Möglichkeiten sind Strings und Enums.
Dennis geht davon aus, daß deine x,y ganze Zahlen sind. Sollte das nicht der Fall sein, dann wende Dich noch mal vertrauensvoll an Dein zuständiges LV-Forum Big Grin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.05.2011, 15:50
Beitrag #4

Kiesch Offline
LVF-Stammgast
***


Beiträge: 411
Registriert seit: Mar 2009

2019, 2018, 2016
2009
DE

04519
Deutschland
RE: Verschiedene Cases mit Boolean-Werte ansteuern
Kann man die Cases denn auch dynamisch während der Laufzeit manipulieren? Ich würde da eher mit zwei ineinander Verschachtelten Cases Arbeiten:

Wenn erste Abfrage True; dann fall für x=y (in den True Case)
Wenn erste Abfrage False (also False Case im Äußeren Case); dann x<y Vergleichen; an die innere Case Struktur anschließen und in den True Fall den Fall für x<y reinbasteln, in den False Fall x>y (da die 3 Abfragen den ganzen Bereich abdecken muss x>y zwingend True sein, wenn die beiden anderen False sind).

Gruß Kiesch

P.S: Kein Beispiel da du auch ein bisschen selber nachdenken darfst (ich möchte dir jetzt nicht unterstellen das nicht gemacht zu haben, aber die Aufgabe nach der du fragst ist doch arg simpel zu lösen und wenns daran schon scheitert...)

Zitat:Märchen und Geschichten werden erzählt am Lagerfeuer, technischen Fakten werden mitgeteilt (oder so). (Genauso wie Software nicht auf einem Server "herumliegt", die ist dort installiert.)
*Zitat: IchSelbst*
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
31.05.2011, 09:24
Beitrag #5

chrissyPu Offline
LVF-Stammgast
***


Beiträge: 467
Registriert seit: Jun 2006

2014 PDS
2006
DE_EN

64283
Deutschland
RE: Verschiedene Cases mit Boolean-Werte ansteuern
Hi,

verschachtelte Cases sind nicht wartungsfreundlich, unübersichtlich und nur für bestimmte Anzahlen von Cases überhaupt möglich, sonst hat man undefinierte Zustände oder solche, die man abfangen muss...

Vorschlag: Nimm ein U8 als Case Selector und stell die Darstellung auf Bitwise um. Dann kannst Du einzelne Vergleichsergebnisse auf einzelne Bits legen und hast einen eindeutigen Selektor. Wenn A der Selektor ist, kann man für x=y A=2 zuweisen (das ist dann bitweise vom LSB aus geschrieben 01...), für x<y z.B. A=1 (10...) und für x>y A = 0 (00...). Bis jetzt hat man noch nix gewonnen, aber man kann jetzt einfach die Ergebnisse aller Vergleiche aufaddieren und hat dann seinen eindeutigen Selektor.

Grüße,

ch
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
31.05.2011, 09:42
Beitrag #6

TSC Offline
LVF-Team
LVF-Team

Beiträge: 1.882
Registriert seit: Sep 2008

LV 2018 SP1
2008
EN

52379
Deutschland
RE: Verschiedene Cases mit Boolean-Werte ansteuern
Da stellt sich dann die Frage der Effizienz! In chrissyPus Vorschlag muss jedes mal JEDER Vergleich ausgewertet werden. Für die hier gegebene Aufgabe sicherlich kein großer Aufwand, aber auch verschachtelte Case-Strukturen wären hier nicht wirklich unübersichtlich!

Mein Vorschlag:

X-Y berechnen und an eine Casestruktur geben. Die Casestruktur behandelt dann die Fälle:

(X-Y < 0) ODER (X-Y = 0) ODER (X-Y > 0)

Damit reduziert man den Aufwand auf eine Subtraktion und eine Casestruktur.

Grüße,
Totti

"Über Fragen, die ich nicht beantworten kann, zerbreche ich mir nicht den Kopf!" (Konrad Zuse)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Event Triggern über boolean Anzeige simcum 6 3.528 25.02.2023 14:57
Letzter Beitrag: simcum
  Mittelwert VI mit Boolean-Ausgang BlackEagle 6 5.440 18.01.2020 15:10
Letzter Beitrag: Lucki
  Boolean als globale Variable ares2013 12 11.289 06.09.2019 13:57
Letzter Beitrag: GerdW
  Boolean durch Array bedienen Gellerpa 3 5.039 07.06.2018 20:10
Letzter Beitrag: hansi9990
  Boolean Array (>32-Bit!) to Number Daniel_S 2 6.137 27.07.2016 13:44
Letzter Beitrag: jg
  Boolean-Array aus String zurückgewinnen jusaca 3 5.426 20.07.2016 21:49
Letzter Beitrag: Lucki

Gehe zu: