Am nevoie de o mână de ajutor: gândiți-vă la o cifră! (Romanian)

Precum spuneam într-un post anterior mi s-ar părea interesantă o călătorie cu trenul pe un circuit ales aleator. Și m-am hotărât să-mi propun un scop: odată în viață trebuie să fac o astfel de călătorie. Probabil nu va fi imediat, însă aș putea decide de pe-acum direcția.

Pentru a alege aleator 2 stații CFR din cadrul listei complete de 2153 stații, de inclus în circuitul cu plecare și sosire din Cluj-Napoca (conform regulilor prestabilite), m-am hotărât să apelez la ajutorul vostru: vreau să vă includ și pe voi, prieteni, cunoștințe sau simpli vizitatori în algoritmul de alegere aleatoare!

Iată ce v-aș ruga (dacă doriți să mă ajutați) – este deosebit de simplu: gândiți-vă (bine) și alegeți fiecare câte o cifră (între 0 și 9), apoi postați-o într-un comentariu la acest post, până pe data de 22 decembrie 2009, inclusiv.

Algoritmul de alegere a stațiilor pe baza acestui număr va fi următorul:

  1. În urma preluării tuturor cifrelor care se vor strânge plus o cifră suplimentară aleasă aleator cu ajutorul computerului (utilizând o funcție random criptografică), vom forma un număr natural N (primele cifre ale numărului fiind cele din comentariile de pe blog, urmate de cele din comentariile de la notița importată în Facebook, pentru fiecare dintre aceste serii vom utiliza ordinea crescătoare a momentelor de timp când au fost adăugate, excluzând eventualele posturi duplicate cu același autor și finalizând cu cifra aleasă aleator). Cât timp numărul N va avea însă mai puțin de 5 cifre, vom ajusta numărul agăugând cifre suplimentare alese aleator cu ajutorul computerului.
  2. Efectuăm operația matematică Sin(N), rezultatul fiind scris în formă zecimală cu 5 cifre după virgulă. Reținem primele 4 zecimale (nerotunjind-o pe ultima) și formăm cu acestea numărul natural M. Împărțim M la 2500 și preluăm restul împărțirii, R.
  3. Dacă R este între 1 și 2153, stația din cadrul listei care are indexul (se află pe rândul) R devine prima stație aleasă aleator, în cazurile contrare alegem următoarea combinație (din lista ordonată a tuturor combinațiilor posibile) a cifrelor inițiale postate, formând un alt număr natural N și revenind la pasul 2 pentru o nouă încercare. În cazul în care nu se găsește nicio stație după încercarea tuturor combinațiilor (caz improbabil) va trebui să repetăm încercarea alegerii primei stații, utilizând o cifră suplimentară pentru numărul inițial N, aleasă aleator cu ajutorul computerului (revenind de asemenea la pasul 2).
  4. Utilizând numărul natural N format inițial (la pasul 1) efectuăm operația matematică Cos(N), rezultatul fiind scris în formă zecimală cu 5 cifre după virgulă. Reținem primele 4 zecimale (nerotunjind-o pe ultima) și formăm cu acestea numărul natural M. Împărțim M la 2500 și preluăm restul împărțirii, R.
  5. Dacă R este între 1 și 2153, stația din cadrul listei care are indexul (se află pe rândul) R devine, în cazul în care este diferită de prima stație aleasă anterior, a doua stație aleasă aleator, în cazurile contrare alegem următoarea combinație (din lista ordonată a tuturor combinațiilor posibile) a cifrelor inițiale postate, formând un alt număr natural N și revenind la pasul 4 pentru o nouă încercare. În cazul în care nu se găsește nicio stație după încercarea tuturor combinațiilor (caz improbabil) va trebui să repetăm încercarea alegerii celei de a doua stații, utilizând o cifră suplimentară pentru numărul inițial N, aleasă aleator cu ajutorul computerului (revenind de asemenea la pasul 4).

Aștept cifrele voastre! Voi reveni cu rezultatul într-o postare pe data de 23 decembrie.

PS: Matematicienii (sau statisticienii) din voi mi-ar putea spune că algoritmul prezentat mai sus nu este suficient de bun pentru a obține o caracteristică aleatorie satisfăcătoare, din anumite puncte de vedere, a rezultatului. Poate că ar avea dreptate. Dar mă gândesc că algoritmul este totuși suficient pentru un simplu joc (nu-i cred că-i cazul să trecem pe metode prea științifice).

About Sorin Dolha

My passion is software development, but I also like physics.
This entry was posted in Jocuri. Bookmark the permalink.

6 Responses to Am nevoie de o mână de ajutor: gândiți-vă la o cifră! (Romanian)

  1. Gheorghe says:

    8

  2. Sergiu says:

    cifra mea norocoasa e 7

  3. Sorin says:

    Mulțumesc tuturor pentru cifre. Lista s-a închis, în curând voi posta informații referitoare la traseul aleator obținut!

Add a reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s