Witam. Muszę napisać program, który będzie wyświetlał tekst losowo od 0,5s do 3s i mam problem, aby ustawić taki zakres losowania pod delay.
time:=random(3)+1*1000;
czyli zakres jest od 1 do 3, później żeby zamienić na ms pod delay(time); mnożę to razy 1000. Wszystko by było fajnie, ale jak wylosować właśnie zakres od 0,5 do 3s, próbowałem zmienną typu real, ale nie poszło. Jak zrobię
Może zrób losowanie w zakresie od 0 do 3 sekund. Potem zrób warunek który będzie sprawdzał czy wylosowany czas wynosi mniej niż 0,5s, jeżeli tak to przypisuje wartość 0,5 pod czas.
Jeżeli chodzi o Twój kod…
time:=random(3)+1*1000;
to tutaj przypadkiem nie wykonuje sie najpierw mnożenie a potem dodawanie?
Chodziło Ci o to, żeby sprawdził to co wylosował: if (time >=500) then wtedy wykonuje się reszta else losuje jeszcze raz i spr. ? Trochę długie, ale też by działało. Fakt, najpierw by wychodziło mnożenie, później dodawanie. Miałem to zrobione w 2-óch przypisaniach, ale na szybko myślałem, że będzie działać i w jednym jak program chodził to wkleiłem tą jedną linijkę. Użyję jednak sposobu simplex’a