Losowanie spośród dwóch wartości

0

Witam. Jak w najprostszy sposób można wylosować jedną z dwóch wartości ? konkretnie chodzi to o 0 i 15. Nie wiem za bardzo jak to zrobić przy pomocy randoma. Próbowałem w sposób taki, że najpierw losowałem dowolną liczbę, a potem do x'a w zależności od tego czy był parzysty czy nie przypisywałem przy pomocy (if ... then ...) wartość o lub 15, ale to przekombinowane nieco jest i na pewno da się to zrobić łatwiej. Da się zrobić coś, żeby x:=random(jakieś dwie różne wartości) ?

0
function Losuj: String;
var I:Integer;
begin
Randomize;
I:=Random(16);
if (I mod 2=0) then
I:=0
else
I:=15;
Result:=IntToStr(I);
end;
//i zastosowanie
Label1.Caption:=Losuj;

O to chodzi? :]

@down: napisz tak i zobacz działanie [rotfl] xD

0

No właśnie tak zrobiłem. Nie da się łatwiej ? Bo najlepiej jakby to wszystko się zawierało w jednej operacji. Nie da się może zrobić czegoś w stylu x:=random (0 or 15) :-P ?

0
liczba := round(random)*15

Samo random losuje liczbę z przedziału 0..1, po zaokrągleniu da 0 lub 1 przemnożone przez 15 da 0 lub 15.

Można też:

liczba := random(2)*15;
0
x:=random(2)*15;

//Ach spóźniłem się :)

0

a jakbyś miał np 0, 15, 20 to

function Losuj: Integer;
const
  Tab: array[0..2] of integer = (0, 15, 20);
begin
  Result := Tab[Random(Length(Tab))];
end;

1 użytkowników online, w tym zalogowanych: 0, gości: 1