Hallo, Ich komm bei einer Sache nicht weiter. Ich möchte gerne bei meinen arduino Die höchste variable anzeigen lassen. Mit val max =(val1, val2) bekomm ich den Höchsten Wert ausgegeben, aber wie Kann ich mir anzeigen lassen Welche Variable es war? Mit einen Array Bring ich es nicht zum Laufen. Bitte um Hilfe. Vielen Dank!
Du musst nur "prüfen" welche der beiden Variablen es ist, die den maximalen Wert enthält. Beachte auch den Fall, das beide Variablen den gleichen Wert enthalten können. Also etwa so, if (val1 == max(val1, val2) print "val 1 ist maximal!"; if (val2 == max(val1, val2) print "val 2 ist maximal!";
Oder etwa auch: if (val1 >= val2) print "val 1 ist maximal!"; if (val2 >= val1) print "val 2 ist maximal!";
Die zweite Prüfung kann auch wegfallen. Wenn es nicht die erste Variable ist, muss es die zweite sein. Da reicht ein else aus.
Dirk B. schrieb: > Die zweite Prüfung kann auch wegfallen. > > Wenn es nicht die erste Variable ist, muss es die zweite sein. > Da reicht ein else aus. Da wäre aber das Verhalten bei val1 == val2 subtil verschieden...
Hallo, Danke für die antworten! ja funktioniert ganz gut... mit int val... aber wieso geht es mit static int nicht? im Endeffekt will ich wissen ob celsius oder celsius1 in unbestimmter Zeit der grösste war. static int maxwert = max(celsius, celsius1); läuft gut, nur welcher der beiden war es? ich werde noch verrückt! Ich Danke euch für die Hilfe! mfg Rainer
hallo ich bin jetz auf die lösung gekommen!!
ich hatte int val und nicht static int val!!
naja wie logisch manches ist wenns stimmt!
Danke Leute!!
int x = celsius;
int y = celsius1;
static int val =max(x,y);
if (x >= val) {
lcd.setCursor(0, 3); lcd.print( "X" );
val=x;}
if (y >= val) {
lcd.setCursor(0, 3); lcd.print( "y" );
val=y;}
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.