In deze laatste versie blijft tempNew ongewijzigd. Is dit de versie die niet werkt?
tempNew < 28 ? tempNew : lastTemp = 18;
tempNew > 18 ? tempNew : lastTemp = 28;
Wat zou er echt moeten gebeuren? Zolang kleiner 28 + 0.1 resp. -0.1 ?
De erop volgende "if (tempNew != lastTemp)" daarna altijd WAAR.
lastTemp wordt wel op 18 of 28 gezet maar wijzigt direct weer naar de waarde van tempNew.
Waarschijnlijk werkt "tempNew < 28 ? tempNew = tempNew +0.1 : tempNew = 18; " beter.