Generisanje slucjanih brojeva - izmedju negativnih i pozitivnih ( Excel VBA editor )

  • 4 odgovora
  • 4.979 pregleda
Re: Generisanje slucjanih brojeva - izmedju negativnih i pozitivnih ( Excel VBA editor ) 26.04.2009. u 18:42 · pre 212 meseci #2
Kao što možeš naći ovde http://www.elitesecurity.org/t356641-0#2214158
Slučajan broj u opsegu lowerBound..upperBound dobiješ:

rndValue = CInt(Int((upperbound - lowerbound + 1) * Rnd() + lowerbound)) + 1

Ovde se radi o generisanju celih brojeva. Ukoliko je potrebno generisati realne brojeve, verovatno ćeš se snaći da sam prilagodiš formulu.
Potpis
Nije to loše Rembrante, samo što ne bi dodao još malo boje?
Re: Generisanje slucjanih brojeva - izmedju negativnih i pozitivnih ( Excel VBA editor ) 26.04.2009. u 20:35 · pre 212 meseci #3
Moze malo objasnjenje.Ovo upperbound i lowerbound su promenjlive kojima mi dodeljijemo vrednosti,min i max za random ili su pak REZERVISANE RECI VBA.

Konkretno ocu da generisem slucajan broj izmedju -24 i 13.
rndValue = CInt(Int((upperbound - lowerbound + 1) * Rnd() + lowerbound)) + 1
pa jel bi trebalo ovako da lizgleda

rndValue = CInt(Int((-24-13+ 1) * Rnd() + -13)) + 1

Re: Generisanje slucjanih brojeva - izmedju negativnih i pozitivnih ( Excel VBA editor ) 02.05.2009. u 00:02 · pre 212 meseci #4

Evo prostog primera za opseg od -50 do 20:

Round(Rnd * (20 - (-50)) + (-50),0)

Rnd * (max-(min)) + (min) ili Rnd*70-50

Znaci Random funkcija generiše slučajne brojeve od 0 do 1, pa iz primera mozemo pešaka proveriti:
1. 1 * 70 -50 = 20
2. 0 * 70 -50 = -50
3. 0,999999 * 70 -50 = 19,99993
4. 0,542899 * 70 -50 = -11,99707
5. 0,000001 * 70 -50 = -49,99993

Funkcija Round je tu da zaokruži broj na željeni broj decimala (u primeru je nula za ceo broj)
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme