Tartalomjegyzék

< Programozási tételek

Programozási tételek megvalósítása PHP-ban

Általános tételek

Összegzés

<?php
 
$tomb = array(8, 2, 5, 3, 7);
 
$osszeg = 0;
for($i=0; $i<5; $i++)
	$osszeg = $osszeg + $tomb[$i];
 
print("Összeg: ". $osszeg);
 
?>

Megszámolás

<?php
// 5-nél nagyobb számok megszámolása
$tomb = array(8, 2, 5, 3, 7);
 
$szamlalo = 0;
for($i=0; $i<5; $i++)
	if($tomb[$i] > 5)
		$szamlalo++;
 
print("Darab: ". $szamlalo);
?>

Keresés

$tomb = array(8, 3, 5, 6, 7);
$n = 5; // Az n a tömb elemeinek a száma  
$keresett = 6;
 
$i = 0;
while ( $i<= $n-1 && $tomb[$i] != $keresett)
    $i++;
if ($i < $n)
{
    print "Van ilyen<br>";
    print "Indexe: $i";
}
else
    print "A keresett érték nem található";

Rendezés tételek

Buborékrendezés

$tomb = array(8, 3, 5, 6, 7);
$n = 5; // Az n a tömb elemeinek a száma  
print_r($tomb); print "<br>";
 
for ($i = $n - 2; $i >= 0; $i--)
    for ($j = 0; $j <= $i; $j++)
      if ($tomb[$j] > $tomb[$j+1])
      {
        $swap = $tomb[$j + 1];
        $tomb[$j + 1] = $tomb[$j];
        $tomb[$j] = $swap;
      }
 
print_r($tomb);

Shell-rendezés

$h = array(7, 3, 1);
$tomb = array(8, 9, 3, 2, 5, 7, 4, 1, 6);
 
$n = 9;
 
foreach($tomb as $elem)  
      print $elem . " ";
 
for($k = 0; $k <= 2; $k++)
{
      $lepes = $h[$k];
      for($j = $lepes; $j < $n; $j++)
      {
           $i = $j - $lepes;			 
           $x = $tomb[$j];
           while($i >= 0 && $tomb[$i] > $x)
           {
               $tomb[$i + $lepes] = $tomb[$i];
               $i = $i - $lepes;
           }
           $tomb[$i + $lepes] = $x;
      }	
}
 
print"<br>";
foreach($tomb as $elem)  
      print $elem . " ";

Műveletek rendezett tömbökben

Bináris keresés

<?php
      print "Binaris kereses";
 
      $tomb = array(3,4,8,10,15,20,24,30);
 
      $elso = 0;
      $utolso = count($tomb);
 
      $keresett = 16;	
      $van = 0;
 
      while( $elso <= $utolso && $van == 0)
      {
          $kozepso = floor(($elso + $utolso) / 2);
          if ( $keresett == $tomb[$kozepso] )
          {
              $van = 1;
              $index = $kozepso;
          }
          else		
              if ($keresett < $tomb[$kozepso])
                  $utolso = $kozepso - 1;
              else
                  $elso = $kozepso + 1;	
      }
 
      if ($van)
      {
          print "<br>Van ilyen";
          print "<br>Indexe: $index";
      }
      else
          print "<br>Nincs ilyen";
?>