Strona 1 z 1

Zapisywanie stringów do tablicy bez określania jej wymiarów

: 11 sty 2016 20:45
autor: lorddran
Witam,
podejrzewam, że mój problem jest banalny (stawiam pierwsze kroki w LV) ale nie mogę sobie z nim poradzić. Jak mogę stworzyć tablicę, do której będą przekazywane kolejne zmienne, bez podawania wymiarów tej tablicy?
z góry dziękuję za pomoc i pozdrawiam

Re: Zapisywanie stringów do tablicy bez określania jej wymiarów

: 11 sty 2016 20:56
autor: aaddaas
Bloczek build array, najepiej w połączeniu z shift register
Patrz przykład

Re: Zapisywanie stringów do tablicy bez określania jej wymiarów

: 11 sty 2016 21:13
autor: lorddran
Dzięki za odpowiedź :)
jednak nadal nie potrafię tego zrobić :/ mianowicie mam sobie pętlę for, do niej przez shift register wchodzi sobie wartość (string przekonwertowany na wartość numeryczną) i dalej wchodzi do Build Array. Do drugiego wejścia bloczku podłączyłem Loop Iteration. Następnie podczas próby wyprowadzenia appended array do shift register na wyjściu pętli for następuje błąd...

Zapisywanie stringów do tablicy bez określania jej wymiarów

: 11 sty 2016 21:16
autor: aaddaas
podrzuc kod

Re: Zapisywanie stringów do tablicy bez określania jej wymiarów

: 11 sty 2016 21:24
autor: lorddran
chciałem zrealizować odczyt stringów z portu szeregowego tak by można podejrzeć wszystkie odebrane wartości, a nie tylko ostatnia.

Re: Zapisywanie stringów do tablicy bez określania jej wymiarów

: 11 sty 2016 21:34
autor: dajpanspokój
Ja bym to raczej zrobil normalnym wyjsciem bez shifta ustawionym jako indexing (prawym na wyjście, Tunnel Mode). Wtedy po zamknięciu pętli dostaniesz tablicę wszystkich stringów.
Możesz do tego jeszcze zaznaczyć Conditional i ustawić tak, żeby do tablicy wyjściowej były brane tylko niepuste.

To rozwiązanie jest efektywniejsze od dodawania do tablicy z shiftem, ale nie możesz tej tablicy podglądać w trakcie działania pętli (dopiero po wyjściu z niej)
string out.png
string out.png (13.67 KiB) Przejrzano 12313 razy
lorddran pisze:Dzięki za odpowiedź :)
jednak nadal nie potrafię tego zrobić :/ mianowicie mam sobie pętlę for, do niej przez shift register wchodzi sobie wartość (string przekonwertowany na wartość numeryczną) i dalej wchodzi do Build Array. Do drugiego wejścia bloczku podłączyłem Loop Iteration. Następnie podczas próby wyprowadzenia appended array do shift register na wyjściu pętli for następuje błąd...

Na wejsciu do shift registera nic nie dawaj albo daj tablice a nie wartosc. Ten loop iteration to sa wartosci, które chcesz dodawac do tablicy

Zapisywanie stringów do tablicy bez określania jej wymiarów

: 11 sty 2016 22:00
autor: lorddran
Z jakiegoś powodu ciągle moje zmienne są zapisywane do pierwszej komórki tablicy, a reszta pozostaje pusta

Re: Zapisywanie stringów do tablicy bez określania jej wymiarów

: 11 sty 2016 22:07
autor: aaddaas
Może bardziej w ten sposób?

Re: Zapisywanie stringów do tablicy bez określania jej wymiarów

: 11 sty 2016 22:25
autor: dajpanspokój
O ile dobrze rozumiem, twój program ma zbierac wartości przesyłane przez serial, a potem wyswietlic wszystkie niezerowe na wykresie, jesli po tej wartości jest Enter?
Jeśli tak to tu jest rozw (usun ta mala petle for)

Re: Zapisywanie stringów do tablicy bez określania jej wymiarów

: 13 sty 2016 20:07
autor: lorddran
eh, ma głupota nie zna granic... co jeszcze robię nie tak? ;p

Zapisywanie stringów do tablicy bez określania jej wymiarów

: 13 sty 2016 22:26
autor: dajpanspokój
Jeśli masz wersje LV>=2014 to mozesz sobie przeciagnac to moje rozwiazanie na swoj block diagram.

Bloczek łączenia stringów jest zły, powinien być build table.

Ale generalnie staralbym sie sprawdzac czy dostales liczbe zaraz po jej otrzymaniu a w shifcie przekazywac tablice doubli a nie stringów. Wtedy juz bez sprawdzania mozesz ją wyświetlić na wykresie.

I zastanów się jak rozwiązać problem gdy ktoś ci wyśle 0 przez serial