Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]x procent szans
kactuzz
post
Post #1





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 28.07.2006

Ostrzeżenie: (0%)
-----


Witam.

Mam problem bo nie wiem jak sie za to zabrać tongue.gif
Otóż chciałbym zrobić skrypt, który symuluje czy czy dana rzecz się uda.
Np ustawiam procent na 70% i jest 70% szans, że się powiedzie ;D

Ktoś może mi podsunąc jakiś pomysł (mile widziany gotowiec ;D).


pzdr
Powód edycji: [Spawnm] Przeniosłem.


--------------------
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
Spawnm
post
Post #2





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




gotowiec: rand()" title="Zobacz w manualu PHP" target="_manual
Go to the top of the page
+Quote Post
l0ud
post
Post #3





Grupa: Zarejestrowani
Postów: 1 387
Pomógł: 273
Dołączył: 18.02.2008

Ostrzeżenie: (0%)
-----


Losuj liczbę z zakresu 1-100 (rand()) no i np. przy 70-procentowej szansie wszystkie liczby od 70 w dół odpowiadają sukcesowi, pozostałe porażce. tongue.gif


--------------------
XMPP: l0ud@chrome.pl
Go to the top of the page
+Quote Post
Asmox
post
Post #4





Grupa: Zarejestrowani
Postów: 359
Pomógł: 12
Dołączył: 16.01.2009

Ostrzeżenie: (0%)
-----


l0ud niezły pomysł, a ja mam jeszcze taki:
Ustawiasz sobie procent szans, na przykład właśnie 70. Następnie robisz losowanie od 0 do 100. Później dodajesz do tych 70 i sprawdzasz czy wynik jest większy lub równy 100. Przykład:
  1. <?php
  2. function testPropability($chance) {
  3. if(!is_numeric($chance)) return FALSE //Jeśli nie podano liczby to jakby nie ma co robić, choć możesz ustawić na 0 lub rzucenie wyjątku złego parametru
  4. $rand = rand(0, 100);
  5. $result = $chance + $rand;
  6. if($result >= 100) {
  7. return TRUE // Udało się
  8. }
  9. else {
  10. return FALSE // Nie udało się
  11. }
  12. }
  13.  
  14. testPropability(70);
  15. ?>

Jak zawsze, jeśli pomogłem, czy mógłbyś kliknąć POMÓGŁ ?

Ten post edytował Asmox 23.07.2009, 11:44:39


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 05:56