<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pl-pl">
<link rel="self" type="application/atom+xml" href="https://forum.atnel.pl/feed.php?f=4&amp;t=11489&amp;mode" />

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2015-04-25T20:52:12+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=11489&amp;mode</id>
<entry>
<author><name><![CDATA[icer_cmg]]></name></author>
<updated>2015-04-25T20:52:12+01:00</updated>
<published>2015-04-25T20:52:12+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=11489&amp;p=127463#p127463</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=11489&amp;p=127463#p127463"/>
<title type="html"><![CDATA[Re: Losowanie bez powtarzania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=11489&amp;p=127463#p127463"><![CDATA[
Kiedyś miałem troszkę podobny problem. Rozwiązałem go tak, że miałem tablicę z wszystkimi możliwymi elementami, którą następnie tasowałem. Dokładniej wyglądało to tak, że zamieniałem elementy od 0 do rozmiar tablicy z losowym elementem z przedziału aktualny+1 do rozmiar tablicy. Do każdego tasowania było inne ziarno. Tak potasowana tablicy była już czytana po kolei - potrzebowałem 4 liczby losowe - wykorzystywałem elementy od 0 do 3. Dodatkowo można też zrobić tasowanie tylko tylu elementów, ile nam potrzeba, ale to już szczegół. Mam nadzieję, że to pomogło.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1636">icer_cmg</a> — 25 kwi 2015, o 20:52</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[PJS]]></name></author>
<updated>2015-04-25T20:47:41+01:00</updated>
<published>2015-04-25T20:47:41+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=11489&amp;p=127462#p127462</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=11489&amp;p=127462#p127462"/>
<title type="html"><![CDATA[Re: Losowanie bez powtarzania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=11489&amp;p=127462#p127462"><![CDATA[
Można tak:<br />- robisz tablicę liczb od 1 do 10 <br />- losujesz pozycję w tablicy (0 do 9), w ten sposób masz pierwszą liczbę wylosowaną;<br />- zamienisz miejscami wylosowaną liczbę z ostatnią (pozycja 9)<br />- ponownie losujesz, ale już tylko pozycje 0 do 8 (jedną mniej)<br />- zamieniasz miejscami wylosowaną z przedostatnią pozycją (8)<br />itd. analogicznie.<br />Wynikiem tego masz wylosowane liczby w tablicy w odwrotnej kolejności, tzn. pierwsza wylosowana jest pod pozycją 9, druga - 8 itd. aż ostatnia wylosowana pod pozycją 0. Oczywiście ostatniego losowania dla jednej liczby nie robisz.<br />Podobnie można zrobić na wskaźnikach.<br />Mam nadzieję, że zrozumiale napisałem o co chodzi.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1614">PJS</a> — 25 kwi 2015, o 20:47</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Atlantis]]></name></author>
<updated>2015-04-25T20:04:38+01:00</updated>
<published>2015-04-25T20:04:38+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=11489&amp;p=127460#p127460</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=11489&amp;p=127460#p127460"/>
<title type="html"><![CDATA[Losowanie bez powtarzania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=11489&amp;p=127460#p127460"><![CDATA[
Potrzebuję jakiegoś sposobu na losowanie kilku liczb z niewielkiego przedziału (np. od 1 do 10) w taki sposób, żeby żadna z nich nie powtarzała się w serii. Innymi słowy chodzi o odpowiednik wyciągania piłeczek z pudełka, bez ponownego wkładania już wylosowanych.<br />Najbardziej oczywistym rozwiązaniem, jakie przychodzi mi do głowy jest zastosowanie zmiennej tablicowej, do której byłyby wpisywane wyniki poprzednich losowań, z którymi byłby porównywany najnowszy wynik. W przypadku zgodności losowanie byłoby powtarzane do skutku.<br /><br />Może jednak da się to zrobić w jakiś prostszy sposób, bez ciągłego zapętlania programu porównaniami z liczbą, która już wystąpiła? W końcu szczególnie pod koniec serii taka sytuacja będzie normą.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2174">Atlantis</a> — 25 kwi 2015, o 20:04</p><hr />
]]></content>
</entry>
</feed>