Php – Rand Fonksiyonunda Olasılık ile Oynama
Tarih: Ekim 15th, 2009 | Yazar: Ertuğrul Erkan | Kategori: Php | Etiketler: olasılık, Php, php rand, rand komutu, random, rastgele sayı | 7 Yorum »Bugün basit bir mantık ile rand() fonksiyonunda nasıl olasılık ile oynanılabilir ona bakıcaz. Rand yani Random yani Rastgele sayı fonksiyonunun işleyişi oldukça basittir. Siz iki adet sayı verirsiniz, Php otomatik olarak rastgele bir seçim yapar. Fakat yüzde 60 olasılık ile şunu, yüzde 40 olasılık ile şunu yap diyemeyiz.
İşte bu derste ufak bir mantık ile yüzdeler kullanıcaz. Yine Php ye rastgele bir sayı seçtireceğiz ve 70% de echo “70%”, 30% de echo “30%” yazdıracağız. İsterseniz başka atamalar yaparak, değişik fonksiyonları da çağırabilirsiniz. Bunlar tamamen size kalmış durumda..
Öncelikle kodlarımız;
<?php
$sayi = rand(0,10);
if($sayi <= 7) {
echo "70%";
}else{
echo "30%";
}
?>
Açıklama
0 ile 10 arasında bir seçim yaptırıyoruz. Burada 100 deler arasından seçim yapmak esas mesela. Fakat 10 ile 100 arasında sadece tek bir 10 değeri olduğu için sistemi yormak yerine sadece 0 ile 10 arasında seçtiriyoruz.
Sonra rastgele sayı 7 ye eşit veya ondan küçükse ekrana 70% yazdırıyoruz. Burada pasta mantığını kullanabiliriz. Pastanın 7 parçası = 70% ye. Dışarıda kalan kısım ise 3 parça yani 30%’ dur. Eğer ki fonksiyon çağırıyorsanız bu şekli kullanabilirsiniz. Fonksiyon değilde bir sayı seçtiriyorsanız echo yerine yine rand yaptırabilirsiniz. Bu sayede iç-içe geçen sadeleşmiş sayılar elde ederiz.
Herkese iyi günler, iyi çalışmalar.
Benzer Yazılar;
- Php de Kullanıcıyı Belirli Bir Süre Bekletmek
- Php Bot Mantığı ile Backlink Hesaplayıcısı Yapımı
- Php ile Ajax Destekli Yapay Zeka Yapalım
- Php ile Base64 İşlemleri
- Php de Get Metodu ve Kullanımı

ne öğretiyor? hiçbirşey…
kimisi yabancı sitelerden gördüğünü türkçeleştirip
kendi fikriymiş gibi yazar… bkz: Yagiz Gürgül
Kimisi de böyle boş şeyler…
echo “aptal liseli bebeler”;
@someturkishguy
Demek ki o sizin engin bilgilerinizin seviyesine çıkamadık. Bu yüzden çok özür diliyorum.
Ama yazının çalıntı olduğunu idda etmişsiniz. Lütfen bana bu yazının asıl kaynağı gösterin. Aksi taktirde hakaretler ile saldıran kıskanç bir “lise üstü” olarak göreceğim sizi.
Söyledikleriniz umrumda değil. Sanıyorum Yağız hocam da aynı düşünceyi paylaşacaktır. Eğer ki size hitap etmiyorsak niye inceleme de buluyorsunuz?
echo “herkes konuşuyor”;
Henüz okuduğunu anlayamayacak durumda iken, insanlar için yazmak oldukça zararlıdır… Mesajımda senin yazdığın örneğin çalıntı olduğuna dair bir ifade mevcut mu? dikkatlice okumanı rica ediyorum… hatta mesajımın içerisinde çalıntı kelimesi bile yok. Yağız için yabancı sitelerden gördüklerini kendi fikriymiş gibi türkçeleştiriyor demişim. senin örneğin için de boş kelimesini kullanmışım. çünkü random adına hiçbir şey öğretmiyor.. ne bileyim, random komutunun aslında gerçekten random bir sayı üretmediği, döndürdüğü sonuçların genelde ağırlıklı olarak belirli bir aralıkta yoğunlaştığını, sonuçların sayı aralığına eşit dağılmadığını ve bunu önlemek için nasıl bir algoritma izlenebilir vs vs yazabilirdin. yani random sayı üretimi üzerine hiçbirşey öğretmemişsin bence orada…
istersen bu mesajı yayınlamayabilirsin.
@someturkishguy;
Anladım, böyle yorumlar görmek oldukça güzel. Ortak platformdayız, herkesin yorumlarını da yayınlıyorum.
İyi günler.
someturkishguy,
ikinci mesajın gayet doğru, fakat birinci mesajın hem çok seviyesiz hem de saldırgan! bunu ikinci mesajında olduğu gibi uygun bir dille söyleye bilirsin.
hatta kendin yorumda aşağılamak yerine örnek verip, ardından olması gerekeni yazabilirsin. herkes her zaman aynı şekilde düşünemez, kimin neye ihtiyacı var bilemez. görüldüğü gibi bir değişken ile yüzlerce farklı şey yapılabiliyor.
saygılı olalım, lütfen…
bu makale aslında pek doğru sayılmaz. çünkü üretilen sayıların hepsinin 7 ile 10 arasında gelme ihtimalleride var!
Herkes ingilizce bilmek zorunda değil başka bir siteden çeviri yapılmış olması bile birşeydir. Arkadaş bildiklerini paylaşıyor sonuçta teşekkürler.