<?php
$min=20; /// 20 saniye
$max=777600; ///777 600 saniye 9 gün
$toplam=40;
for($i=1;$i <= $toplam; $i++) {
$maxs=($max*$i)/$toplam;
$min=rand($min+1,$maxs);
echo "Seviye ".$i." ".$min."<br />";
}
?> Belli Sıraya Göre Rastgele Sıra Atamak
3
●376
- 05-04-2010, 16:27:39Merhaba daha önce rastgele sayı atayan bi betik için yardım istemiştim şimdi onu rastgele saniye atan bi sistem yapmak istiyorum ama küçüğe göre olucak yani yani seviye 1 de falan 20-25 saniye olucak 2 de 55-60 saniye falan yani abartmadan ilerliyecek aşağıdaki kodu kullandımmı direk büyüğe doğru gidiyor çok büyük saniyeler veriyor o yüzden
- 06-04-2010, 00:04:04Üyeliği durduruldutam olarak anlıyamadım. 2 tip saniye çeşidi olsun seviye 1 de 20 ile 25 arası rastgele çıksın, seviye 2 de 55 ile 60 arası rastgele çıksın galiba demek istiyorsunuz
<?php
$seviye1=rand(20,25);
$seviye2=rand(55,60);
echo "Seviye 1 : $seviye1<br />";
echo "Seviye 2 : $seviye2";
?>
Her f5 e bastığında değişik saniyeler çıkar ortaya kolay gelsin.. - 06-04-2010, 00:04:53
<?php $min = 20; $toplam = 40; $onceki = 0; for($i=1;$i <= $toplam; $i++) { $artis = rand(20,30) * $i; $deger = ($onceki) + $artis; echo "Seviye ".$i." ".$deger."<br />"; $onceki = $deger; } ?>gibi birşey iş görür mü yoksa illa belirtilen 9 günün saniyesinde mi olacak... - 06-04-2010, 03:27:32Kimlik doğrulama veya yönetimden onay bekliyor.Arkadaşım, 40 basamaklık bir döngüde 20 den başlayıp 770 binlere kadar rand sayı almak istiyorsun. Tabii ki atlama yapacak. Böyle bir şey yapmak için, bir sabit alıp, onun üssüyle çarpman lazım. Şöyle bir şey işini görür sanırım, atlamalar aşırı veya az gelirse çarpanı değiştirip deneme yaparsın:
<?php $min = 20; $toplam = 40; $max=777600; $cur = 0; for($i=1; $i <= $toplam; $i++) { $carpan = 1.3; $us = pow($carpan,$i)/$carpan; $cur += ceil((rand(($min+$i)*$us,$toplam*$us)*$us)/$carpan); $mev = ($max/$toplam)*$i; $cur = ($cur < $min+$i ) ? ceil(($min+$i)*$carpan) : $cur; $cur = ($cur > $mev ) ? rand(ceil(($max/$toplam)*($i-1)),$mev) : $cur; echo 'Seviye '.$i.' '.$cur.'<br />'; } ?>