Zahlenbereich wählen

Gast #1298611
Lesenswert?

vielleicht eine idee, aber ich weiß immerhin warum der vergleich nicht 
funktioniert:

als erste vergleicht der compiler links und mitte und dann mitte und 
rechts und somit ist der Vergleich immer falsch.
#1298818
Lesenswert?

Unitled schrieb:

> als erste vergleicht der compiler links und mitte und dann mitte und
> rechts und somit ist der Vergleich immer falsch.

genau das passiert nicht.

In C ist fast alles ein Ausdruck. Auch das Ergebnis eines Vergleichs 
oder einer Zuweisung.

In

if (0 < Messwert > 210)

wird 0 und Messwert miteinander verlgichen. Das liefert ein Ergebnis, 
nämlich 0 oder 1, je nachdem ob der Vergleich zutrifft oder nicht.
Dieses Ergebnis geht dann in den zweiten Vergleich: > 210
Da weder 0 noch 1 jemals größer als 210 sein wird, ist damit der 
komplette Ausdruck immer falsch.

Wenn man deinen Vergleich etwas ausführlicher auseinandernimmt, dann 
hast du da oben geschrieben:

  Vergleich1 = ( 0 < Messwert );
  Vergleich2 = ( Vergleich1 > 210 );
  if( Vergleich2 )

Was du wissen willst:
Ist es wahr, dass Messwert größer 0 ist UND Messwert kleiner als 210 ist

  if( Messwert > 0  && Messwert < 210 )
Gast #1299474
Lesenswert?

Was Karl heinz Buchegger wohl meinte ist, dass es zwei elemtare logische 
Verknuepfungen gibt, naemlich : UND, ODER

Mit Hilfe dieser und der Negation kann man nun alle anderen logischen 
Verknuepfungen darstellen. Dass es fuer einige gebraeuchliche 
(nichtelementare) auch noch extra Abkuerzungen (z. Bsp. XOR) aendert 
dabei nichts an der grundsaetzlichen Aussage. ;)

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren