jak przypisać kilka liczb do jednej zmiennej? - Wersja do druku +- Arduino Polska Forum (https://forum.arduinopolska.pl) +-- Dział: Korzystanie z Arduino (https://forum.arduinopolska.pl/dzial-korzystanie-z-arduino) +--- Dział: Programowanie w Arduino (https://forum.arduinopolska.pl/dzial-programowanie-w-arduino) +--- Wątek: jak przypisać kilka liczb do jednej zmiennej? (/watek-jak-przypisa%C4%87-kilka-liczb-do-jednej-zmiennej) |
jak przypisać kilka liczb do jednej zmiennej? - emiks - 13-05-2018 Witam mam problem i potrzebuje pomocy. Projekt zakłada sterowanie pompką 12V i podlewanie kwiatków. Mam zmienną Kod: byte pompaWodaDzien_ON = 14; //uruchom pompę tego dnia Problem w tym że kwiatki potrzebują podlewania więcej niż raz w miesiącu. W jaki sposób wykonać to tak aby zmienna wynosiła np Kod: pompaWodaDzien_ON = 04 14 24 ; RE: jak przypisać kilka liczb do jednej zmiennej? - Robson Kerman - 13-05-2018 Możesz wykorzystać tablicę i sprawdzać jej wartości w pętli. RE: jak przypisać kilka liczb do jednej zmiennej? - emiks - 14-05-2018 Coś mi nie rusza z operatorem || ale jak dam samo pompaWodaDzienPodlewania[3] w warunku to działa. Kod: #include <DS3231.h> // biblioteka zegara czasu rzeczywistego DS3231 RE: jak przypisać kilka liczb do jednej zmiennej? - kaczakat - 14-05-2018 Wynikiem || jest 0 lub 1, a to nie musi być == dt.day. Poza tym na pewno da się to jeszcze trochę skomplikować . RE: jak przypisać kilka liczb do jednej zmiennej? - emiks - 14-05-2018 (14-05-2018, 20:56)kaczakat napisał(a): ... Poza tym na pewno da się to jeszcze trochę skomplikować . Za dziesięć dni minie pół roku od choinki pod którą leżał prezent w postaci Arduino Uno, zdaję sobie sprawę z tego iż to co piszę w oczach fachowców jest hmm amatorszczyzną ale bawię się przy tym świetnie a o to chodzi także z góry wybaczcie za moje wypociny Wracając do tematu. Cytat:Wynikiem || jest 0 lub 1 Jak to ma się do tego zapisu pochodzącego z czujnika odległości ? Kod: // Sprawdzamy zakres pomiarowy RE: jak przypisać kilka liczb do jednej zmiennej? - kaczakat - 14-05-2018 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. RE: jak przypisać kilka liczb do jednej zmiennej? - es2 - 16-05-2018 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. |