Skocz do zawartości

Tablice w Arduino – #1 – szybki start


Pomocna odpowiedź

witam, bardzo dziękuję za pomoc - z poziomem mojego wyedukowania w tym temacie to będę to do rana analizował jak to działa, ale super, że jest to możliwe i że mnie wsparłeś, teraz tylko musze to rozgryść 🙂

12 godzin temu, merinum napisał:

mam dwie tablice:

image.png.97f60e0c908884d898eca042b0103444.png

Przy tym krótkim przykładzie rodzi się pytanie czy Twoja pierwsza tablica ma wyłącznie rosnące kolejno te numery maszyn. Bo jeśliby tak było, to strzelanie z armaty do komara, skoro można po prostu liczyć indeks drugiej tablicy jako nr_maszyny - 63.

1 godzinę temu, trainee napisał:

Przy tym krótkim przykładzie rodzi się pytanie czy Twoja pierwsza tablica ma wyłącznie rosnące kolejno te numery maszyn. Bo jeśliby tak było, to strzelanie z armaty do komara, skoro można po prostu liczyć indeks drugiej tablicy jako nr_maszyny - 63.

w moim przypadku jest właśnie tak jak piszesz - numery są narastające więc twoje rozwiązanie pasuje jak najbardziej, ale fajnie też że iem, że istnieje jakieś inne rozwiązanie tematu. dzięki wam za wsparcie, pomaga mi to w nauczeniu się ciągle czegoś nowego 🙂

Panowie, tak drąże temat tych tablic bo nawet całkiem fajne mi się one wydały, ale mam tutaj dylemat - powiedzcie mi co jest nie tak w poniższym, że wywala mi błąd - skrótowo: mam dwie zmienne związane z millis() i kompiluje mi program, ale wywala mi błąd - w czym jest pies pogrzebany? dziękuję za pomoc

unsigned long czas[] {2,3,4};
float mnoznik = 2.5;
unsigned long czas1[] {round(czas[0]*mnoznik),round(czas[1]*mnoznik),round(czas[2]*mnoznik)};

void setup() {
}
void loop() {

}

 

(edytowany)

@merinum Kompilator uprzejmie pokazuje Ci, jak wygląda makro round() i strzałką grzecznie wskazuje, że jest w nim rzutowanie do typu long. I ostrzega, bo pomocny jest, że coś może być nie w porządku, skoro wynik long tego makra zapisujesz do tablicy unsigned long. Bo taki long mógłby być ujemny.

Na przyszłość, jak zadajesz pytania, wklejaj komunikaty. To wszystkim znacznie ułatwi. Bez zgadywania.

Edytowano przez trainee

coś mnie mega zaćmiło z tymi znakami "=", już to nadrabiam ....

a jak to poczarować by można było zdefiniować jakiś mnożnik i żeby było to zgodnie ze sztuką zakłądając, że zmienna ma występować w roli czasu?

26 minut temu, trainee napisał:

Takie moce C++. W C nie przejdzie. No ale Arduino w końcu jest podwójnie plusowate.

A widzisz, nie wiedzialem😉 a u mnie ten kod sie kompiluje normalnie IDE 1.8.8/1.8.19...

1 godzinę temu, merinum napisał:

coś mnie mega zaćmiło z tymi znakami "=", już to nadrabiam ....

a jak to poczarować by można było zdefiniować jakiś mnożnik i żeby było to zgodnie ze sztuką zakłądając, że zmienna ma występować w roli czasu?

Nie rozumiem tej wiadomości. Przeczytałeś, co wcześniej napisałem? Bo brak "=" nie jest tam problemem.

1 godzinę temu, trainee napisał:

Normalność rzecz względna. A popatrzyłeś w to okno wyjścia kompilatora? 😛

Tak, i nie ma tam zadnych bledow, ostrzenien..wszystko normalnie sie kompiluje (dla Uno)

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...