Witam
Mam taki problemik:
Losuje sobie np. 3 liczby z przedzialu 1-40.
Ale czasami te 3 liczby moga być takie same!! Albo przynajmniej dwie z nich.
Jak zrobić tak, żeby losowało każdą liczbę inną od pozostałych dwóch?
pozdr.
KONRADCZE
Witam
Mam taki problemik:
Losuje sobie np. 3 liczby z przedzialu 1-40.
Ale czasami te 3 liczby moga być takie same!! Albo przynajmniej dwie z nich.
Jak zrobić tak, żeby losowało każdą liczbę inną od pozostałych dwóch?
pozdr.
KONRADCZE
Randomize;
no i warunek sprawdzający czy dane liczby nie są już wylosowane
Wiem ze Randomize;
Ale chodzi o to, żeby nie losowało trzech lub dwóch identycznych liczb...
no i warunek sprawdzający czy dane liczby nie są już wylosowane
Nio i wlasnie jak ten warunek zapisac :-8 :-8 :-8
ehh - podobny temat był poruszany wiele razy - i można to zrobić na wiele różnych sposobów - poszukaj..
Nio i wlasnie jak ten warunek zapisac :-8 :-8 :-8
np liczby dodajesz do tablicy, a następnie sprawdzasz każdy index
procedure Losuj(Ile:byte;Var Zm:array of integer);
var Tab:array of Integer;
i,ii:integer;
Juz:boolean;
begin
SetLength(Tab,Ile);
randomize;
for i:=0 to ile do
repeat
Zm[i]:=Random(40)+1;
Tab[i]:=Zm[i]
juz:=true;
for ii:=0 to Ile do if Zm[i]=Tab[ii] then Juz:=false;
until Juz;
end;
Powinno działać ;-),ale nie wiem bo nie testowałem :d