Autor: dturina@geocities.com (Danijel Turina)
Datum: 1999-11-17 13:40:21
Grupe: hr.fido.religija,hr.alt.philosophy
Tema: Re: BROJ BROJEVA
Linija: 65
Message-ID: 3835a11d.8942424@news.tel.hr

X-Ftn-To: Damir Orlic 

Damir Orlic  wrote:
>>Meni se ta zakonitost cinila krajnje dvojbenom pa sam isao isprobati
>>(Borland Pascal 7), mijenjati vrijednosti (recimo staviti 999999
>>umjesto 100000), dizati na jako velike brojeve, spustati na jako male,
>>i vrijednost se kretala izmedju 32 i 37 %, pa mi se cini da nekakva
>
>To su ti oscilacije isle prema 32% i 37% kada si stavljao male
>brojeve? Za velike brojeve je bilo blizu 35%. Da si se igrao
>prosirenja na longint tip brzo bi se priblizio 31%. Sto veci broj
>(umjesto 30000) to blize pravom rjesenju. :-)

Napisao sam sinoc potpuno novi program koji to racuna, i on daje
vrijednosti koje se krecu oko 17%. Promijenjen je algoritam za
slucajne brojeve (uzme ono sto kanta odredi kao slucajni broj, i to
onda "malo korigira" - doda jednu i oduzme drugu vrijednost slucajno
odabrane memorijske lokacije (word size, randomizirani segment i
offset). Isto tako odredjujem prvu znamenku na malo drugaciji nacin.
;)

Vjerojatnost pojave znamenki izracunata malo modificiranom verzijom
programa (koji gleda sve, a ne samo jedinice) je (za 10^6 pokusaja):

1: 17.00%
2: 17.00%
3: 16.92%
4: 16.96%
5: 16.99%
6: 10.06%
7:  1.68%
8:  1.69%
9:  1.69%
---

Dakle ocito mi brojevi nisu pretjerano slucajni, i krecu se u takvom
rasponu da su znamenke 7, 8 i 9 bitno manje vjerojatne, 6 je nesto
manje vjerojatna, ali sve ostale su rasporedjene manje-vise
ravnomjerno.

--
program raspodjela;
uses crt;
const top = 1000000;
var l,n, count: longint;
    s: string[1];
function rnd(max: word): longint;
begin

rnd:=random(max)+memw[random(max):random(max)]-memw[random(max):random(max)];
end;
begin
  randomize;
  count:=0;
  for l:=1 to top do
  begin
    n:=rnd(65000);
    str(n:1, s);
    if s[1]='1' then inc(count);
  end;
  writeln(count/top*100:5:2,'%');
end.

-- 
Web (Kundalini-yoga): http://danijel.cjb.net