Strona 1 z 1

Przesuwanie wartości w tablicy

: 22 sie 2017 14:23
autor: KapitanBomba
Siemanko,

Sprawa wygląda następująco: mam 2 tablice, obie o rozmiarze 20. Pierwsza to tablica przekonwertowana z boolowskiej na 1,0, więc zawiera w losowych miejscach 1 a w losowych 0. Druga zawiera wartości double, jednak jest tak że jest ich kilka na początku, a potem są już same 0 (tyle żeby rozmiar tablicy był 20), jak to wygląda widać w załączniku 1. No i chodzi mi o to, aby tą tablicę z double, tak "poprzesuwać" aby jedynka z pierwszej tablicy odpowiadała niezerowej wartości z drugiej tablicy, jeżeli niejasno wyjaśnione to załącznik 2 powinien załatwić sprawę. Mi to się wydaje dość trudne do zrobienia, ale może się mylę :D Z góry bardzo dziękuję za wsparcie!

Re: Przesuwanie wartości w tablicy

: 22 sie 2017 16:29
autor: bogdani
Witaj

Nie wiem co rozumierz porzez "poprzesuwać tablicę", ale jak dla mnie, to oczekiwany efekt uzyskasz, jak pomnożysz obie tablice przez siebie.
Wiadomo przecież, że mnożenie przez "0" daje nam zero :-)

bogdani

Re: Przesuwanie wartości w tablicy

: 22 sie 2017 17:02
autor: KapitanBomba
Masz rację, tylko mi chodzi o to że moja tablica z wartościami double jest tak jakby "posortowana", w sensie że np od indeksów 0-10, mamy jakieś sensowne wartości, a 11-20 to zera. Jeżeli wymnożymy tablice to wartości będą poprawne tylko dla indeksów 0-10. A ja chciałbym te sensowne wartości rozłożyć w tablicy tak jak jedynki w tablicy 1-0.

Re: Przesuwanie wartości w tablicy

: 22 sie 2017 20:08
autor: MK_Zuk
Witam,
z tego co co ja zrozumiałem to chodzi o coś takiego:
zadanie labview.png
a kod jest tutaj:
zadanie LabVIEW rozw.png
to co zaznaczyłem prostokątem to jest rozwiązanie zadania.
Pytanie tylko jak ma obsłużyć sytuację, gdy liczba "1" w jednej tablicy jest różna
od liczby niezerowych elementów drugiej.
O ile liczba 1 jest większa to nie ma problemu - do ostatnich "1" zostaną przypisane "0"
to w drugim przypadku, jeśli liczba "1" będzie mniejsza od liczby wartości niezerowych
to te ostatnie wartości niezerowe zostaną zgubione.

Pozdrawiam
Zuk

Re: Przesuwanie wartości w tablicy

: 22 sie 2017 20:32
autor: bogdani
Mnie wyszło coś takiego

MK_Zuk, nie zakładam takiej sytuacji, ponieważ autor o tym nie pisał. Wiem, inżynierowi pojawia się takie pytanie, ale nie zakładajmy najgorszego, bo nam życia braknie. ;)

Re: Przesuwanie wartości w tablicy

: 22 sie 2017 22:15
autor: MK_Zuk
bogdani
generalnie podaliśmy to samo rozwiązanie, tylko Twoja implementacja jest bardziej czytelna.
U mnie nie widać co dzieje się w false - dlatego wrzuciłem snippeta.

Pozdrawiam
Zuk

Re: Przesuwanie wartości w tablicy

: 22 sie 2017 22:34
autor: bogdani
Nie mam u siebie generowania tablic z danymi, tym masz. Dlatego więcej kodu.

Ja robiłem rozwiązanie w czasie jak ty wrzuciłeś swoje i już nie chciałem tego kasować, dlatego załączyłem moje rozwiązanie.

Ciekaw jestem, czy można to zrobić prościej :-)

bogdani

Re: Przesuwanie wartości w tablicy

: 22 sie 2017 23:01
autor: PiDi
To jeszcze taka wersja pod rozwagę:
jedynkowybieracz.png
jedynkowybieracz.png (32.15 KiB) Przejrzano 11986 razy

Re: Przesuwanie wartości w tablicy

: 23 sie 2017 13:30
autor: KapitanBomba
Dziękuję Wam za pomoc! :D Myślałem że to jakiś skomplikowany algorytm z rejestrami przesuwnymi itp, a w sumie to proste...
Dzięki!