• 29-10-2012, 17:50:46
    #1
    Merhaba arkadaşlar,
    Bayramınız kutlu olsun öncelikle,
    Şimdi benim takıldığım bir nokta var bir ödev sorusu bu.
    Soru şu 1-100 arasında 20 elemanlı rastgele tamsayılardan oluşan liste oluşturun daha sonra bu listenin içinde her farklı elemanı ve tekrarlanma sayısını ekrana yazdıran program. Şöyle bişiler yapmaya çalıştım ama olmadı
    <?php
    $farkli=array();
    for($i=1;$i<=20;$i++)
    {
    	$rastgele=rand(1,100);
    	$farkli[$i]=$rastgele;
    	if(in_array($rastgele,$farkli))
    	{
    		$farkli[$i]=array(+1);
    	}
    	else
    		{
    			$farkli[$i]=$rastgele;
    		}
    }
    for($a=1;$a<=count($farkli);$a++)
    {	
    	print"<h1>";echo $farkli[$a];
    	}
    	
    ?>
    Nerede hata var, veya ne yapmam gerekiyor yardımcı olur musunuz?
  • 29-10-2012, 18:17:25
    #2
    $array = array(10, 10, 10, 9, 10, 20, 8, 1, 2, 8, 6, 20);
    //test için üstteki $array
    
    //hocaya göstermek için alttaki $array
    
    for($i = 0; $i < 20; $i++)
    {
        $array[$i] = rand(0,99);
    }
    
    foreach(array_count_values($array) as $key => $value)
    {
    	if($value > 1)
    	{
    		echo $key . ' ' . ($value - 1) . ' kez tekrar ediyor..<br>';	
    	}
    }