Liczba postów: 654
Liczba wątków: 3
Dołączył: Apr 2017
Reputacja:
51
Możesz wykorzystać tablicę i sprawdzać jej wartości w pętli.
Jeśli masz problem z kodem lub sprzętem, zadaj pytanie na forum. Nie odpowiadam na PW, jeśli nie dotyczą one spraw forum lub innych tematów prywatnych.
Liczba postów: 2,371
Liczba wątków: 0
Dołączył: Oct 2017
Reputacja:
240
14-05-2018, 22:21
(Ten post był ostatnio modyfikowany: 14-05-2018, 22:23 przez kaczakat.)
W nawiasie masz to:
(pompaWodaDzienPodlewania[0] || pompaWodaDzienPodlewania[1] || pompaWodaDzienPodlewania[2] || pompaWodaDzienPodlewania[3] || pompaWodaDzienPodlewania[4] || pompaWodaDzienPodlewania[5])
o ile nie będzie to dzień 0 (w sensie wszystkie dni 0) to zawsze da 1?
Potem porównujesz ten 1 == dt.day, co zawsze będzie zero poza dniem wypłaty.
Właśnie dlatego nie robi się takich rozbudowanych warunków, szczególnie gdy się zaczyna bawić logiką.
W drugim przypadku wybierasz między dwoma działaniami logicznymi, jeśli którakolwiek jest 1 to if się wykona.
Liczba postów: 856
Liczba wątków: 2
Dołączył: Nov 2017
16-05-2018, 09:22
(Ten post był ostatnio modyfikowany: 16-05-2018, 09:27 przez es2.)
Gdy trzeba operować na dacie wygodniej używać UnixDateStamp niż dzień, miesiąc, rok. Ma to duże znaczenie, gdy trzeba obliczać liczbę dni pomiędzy zdarzeniami. Zakładam, że kwiatki nie maja niedziel, dla nich to zwykły dzień. Jeśli coś ma się wydarzać np co 3 dni, nie można przyjąć konkretnego dnia tygodnia. Podobnie, nie będzie to konkretny dzień miesiąca. W C są funkcje przeliczające UnixDateStamp, szukaj pod hasłem time.h. W linku
https://www.epochconverter.com/ masz jeden z konwerterów. Wszystko sprowadza się do porównywania liczby 32-bit. Łatwo synchronizowac czas z NTP, wystarczy skopiować taka liczbę do swojego systemu.