Strona 1 z 1

Losowanie nazwisk z tablicy (pojedynczo, bez powtórzeń)

: 12 cze 2011 19:39
autor: foobarek
Witam. Naukę z LabVIEW dopiero zaczynam, mam pewne zagadnienie do zrobienia i chciałbym prosić o pomoc.

Jest tablica, która zawiera 10 nazwisk (mogą być przypisane na stałe, bez różnicy). Każde kolejne losowanie ma wyłonić jedno nazwisko, nie mogą się oczywiście powtarzać. Wszystkie 10 wyników losowań ma być widoczne na panelu.

Na myśl przychodzą mi dwie opcję:
- po każdym losowaniu, wylosowane nazwisko zostaje usunięte z tablicy
- po każdym losowaniu, każde następne losowane nazwisko jest porównywane (pewnie za pomocą jakiejś pętla) ze wcześniejszymi

Mógłby mi ktoś doradzić które rozwiązanie wybrać (podejrzewam, że pierwsze) i jak się za to zabrać. Chociażby kilka ogólników, przykładowych bloczków, bo trochę nad tym przesiedziałem i szczerze, nic nie udało mi się wykonać.

Pozdrawiam!

Losowanie nazwisk z tablicy (pojedynczo, bez powtórzeń)

: 12 cze 2011 21:27
autor: oczekp
podobne do zadania, które trzeba zrobić w związku z szkoleniem on line:) ^^

Losowanie nazwisk z tablicy (pojedynczo, bez powtórzeń)

: 12 cze 2011 22:28
autor: foobarek
Tak, wiem o tym szkoleniu. Byłem nawet zarejestrowany, ale studia + czasem jakaś dorywcza robota i nie dałem rady ;)

W takim razie może ktoś się podzieli takowym programem, skoro podobny, to pewnie ze zmodyfikowaniem sobie poradzę (a jak nie to będę dalej pytał na forum).

Losowanie nazwisk z tablicy (pojedynczo, bez powtórzeń)

: 12 cze 2011 22:32
autor: n_dakota
To pokaż to, co do tej pory udało Ci się zrobić.

Re: Losowanie nazwisk z tablicy (pojedynczo, bez powtórzeń)

: 12 cze 2011 23:49
autor: foobarek
Proszę:
Obrazek

To tylko pierwsze losowanie, jakoś działa. Jeśli coś trzeba poprawić to piszcie. Co dalej? Jakaś pętla? Bo mogę (chyba) zrobić na takiej zasadzie pozostałe losowania, ale schemat strasznie obszerny wyjdzie. No i zbyt rozsądne rozwiązanie to nie będzie :)

EDIT.

Dobra, wspomogłem się jakimś przykładem z forum i wyszło mi coś takiego (załącznik petla.vi):
Obrazek

Po części mnie takie rozwiązanie satysfakcjonuje, ale chciałbym uzyskać coś takiego:

1. Program startuje, losuje pierwszy element po czym się zatrzymuje. Element zostaje wyświetlony na panelu.
2. Po ponownym uruchomieniu, program losuje drugi element, stop. Element na panel.
3. To samo aż zostaną wylosowane wszystkie elementy.
4. Elementy na panelu w osobnych 'wskaźnikach'.

Proszę o podpowiedź.

Re: Losowanie nazwisk z tablicy (pojedynczo, bez powtórzeń)

: 13 cze 2011 01:19
autor: n_dakota
Moja propozycja rozwiązania:
Obrazek

Losowanie nazwisk z tablicy (pojedynczo, bez powtórzeń)

: 13 cze 2011 01:40
autor: foobarek
Zanim zobaczyłem Twój post, robiłem edycje swojego (z podobnym rozwiązaniem). U Ciebie ten schemat jakoś "straszniej" wygląda, ale to pewne przez to, że sam go nie robiłem ;)

Spróbuję dokładniej go prześledzić. Na pewno bardzo fajnie wygląda ta zapełniająca się tablica. No i ciekawie użyte bloczki "Array Size", nie trzeba stałych pakować do schematu. Z LabVIEW jeszcze mało wiem, ale jestem dobrej myśli. Dziękuję bardzo za pomoc i jeśli można prosić o jeszcze, to wskazówki co do uzyskania:
1. Program startuje, losuje pierwszy element po czym się zatrzymuje. Element zostaje wyświetlony na panelu.
2. Po ponownym uruchomieniu, program losuje drugi element, stop. Element na panel.
3. To samo aż zostaną wylosowane wszystkie elementy.
4. Elementy na panelu w osobnych 'wskaźnikach'.

Re: Losowanie nazwisk z tablicy (pojedynczo, bez powtórzeń)

: 14 cze 2011 11:41
autor: rivui
Hej!

Nie moglem spojrzec na wczesniejsze rozwiazania bo niestety posiadam tylko wersje LV 8.6 ale zrobilem cos takiego jak zalaczylem.

1. Kiedy odpalasz program automatycznie losuje pierwsze nazwisko
2. Nastepne nazwisko losuje po nacisnieciu przycisku losuj
3. Po wylosowaniu wszystkich nazwisk przycisk losuj nic nie robi
4. Wylosowane nazwiska gromadzi jako string oraz jako macierz wylosowanych nazwisk

Czy o cos takiego chodzilo?

P.S. Musisz pobrac oba pliki aby program dzialal

Losowanie nazwisk z tablicy (pojedynczo, bez powtórzeń)

: 15 cze 2011 18:40
autor: foobarek
Tak, można powiedzieć, że dokładnie o to. Spróbuję podobne rozwiązanie zastosować u siebie. Pomocne osoby otrzymały pochwały, dziękuję bardzo!