[Pascal] Wyświetlanie losowych elementów tablicy?


(Marcin E Pc) #1

Witam!

Mam taki problem, otóż posiadam tablice z liczbami od 1 do 64, i chcę wyświetlić 6 liczb losowych z tej tablicy, tak żeby żadna z nich się nie powtarzała. I tak żeby nie było to 6 kolejnych liczb. Jak to uczynić?

Pozdrawiam

PS To moje pierwsze kroki w Pascalu


(rozwalkompa) #2

Przede wszystkim przyda się tablica, która będzie zawierać wylosowane już numery

Ale po co Ci tablica z numerami od 1 do 64, można je losować bez tablicy, o tak:

VAR

    W:ARRAY[1..6] of byte;

    i,j,t,los,wylosowana: byte;

    BEGIN

    Randomize;

    for i:=1 to 6 do

     begin

     los:=1+Random(64);

     t:=0;

     for j:=1 to 6 do if W[j]<>los then t:=t+1;

     if t=6 then wylosowana:=los else continue;

     W[i]:=wylosowana;

     writeln(wylosowana);

     end;

    readln;

    END.