A simple program that I wrote in PHP to sort a series of numbers using PHP using Comb Sort algorithm.
If you have some questions please send me an email at jakerpomperada@gmail.com and jakerpomperada@yahoo.com.
Program Listing
<?php
error_reporting(0);
$a= $_POST['val_1'];
$b= $_POST['val_2'];
$c= $_POST['val_3'];
$d= $_POST['val_4'];
$e= $_POST['val_5'];
if(isset($_POST['clear']))
{
$a=""; $b=""; $c=""; $d=""; $e="";
$display_original=""; $process_results="";
}
?>
<html>
<head>
<title>Comb Sort in PHP</title>
<style>
body { font-family:arial;}
form { width: 400px; }
label { float: left; width: 95px; }
.clear { clear: both; height: 0; line-height: 0; }
.floatright { float: right; }
</style>
</head>
<body>
<h2>Comb Sort in PHP</h2>
<form action="" method="post">
<label>Value No. 1 : </label> <input type="text" name="val_1" value="<?php echo $a; ?>" size="5" maxlength="5" autofocus/><br/><br>
<label>Value No. 2 : </label> <input type="text" name="val_2" value="<?php echo $b; ?>" size="5" maxlength="5"/><br/><br>
<label>Value No. 3 : </label> <input type="text" name="val_3" value="<?php echo $c; ?>" size="5" maxlength="5"/><br/><br>
<label>Value No. 4 : </label> <input type="text" name="val_4" value="<?php echo $d; ?>"size="5" maxlength="5"/><br/><br>
<label>Value No. 5 : </label> <input type="text" name="val_5" value="<?php echo $e; ?>"size="5" maxlength="5"/><br/>
<br />
<input type="submit" value="Sort" name="bubble"/>
<input type="submit" value="Clear" name="clear" />
</form>
<?php
function CombSort(&$data, $count) {
$gap = $count;
$swaps = true;
while ($gap > 1 || $swaps)
{
$gap /= 1.247330950103979;
if ($gap < 1)
$gap = 1;
$i = 0;
$swaps = false;
while ($i + $gap < $count)
{
$igap = $i + $gap;
if ($data[$i] > $data[$igap])
{
$temp = $data[$i];
$data[$i] = $data[$igap];
$data[$igap] = $temp;
$swaps = true;
}
$i++;
}
}
}
if(isset($_POST['bubble']))
{
$arr = array($a,$b,$c,$d,$e);
$orig = implode(",", $arr);
Combsort($arr,5);
$final_sort = implode(",", $arr);
$display_original = "Original Values : " .$orig."<br><br>";
$process_results = "Sorted Values : " .$final_sort."<br>";
echo $display_original;
echo $process_results;
}
?>
</body>
</html>
If you have some questions please send me an email at jakerpomperada@gmail.com and jakerpomperada@yahoo.com.
My mobile number here in the Philippines is 09173084360.
Sample Program Output
<?php
error_reporting(0);
$a= $_POST['val_1'];
$b= $_POST['val_2'];
$c= $_POST['val_3'];
$d= $_POST['val_4'];
$e= $_POST['val_5'];
if(isset($_POST['clear']))
{
$a=""; $b=""; $c=""; $d=""; $e="";
$display_original=""; $process_results="";
}
?>
<html>
<head>
<title>Comb Sort in PHP</title>
<style>
body { font-family:arial;}
form { width: 400px; }
label { float: left; width: 95px; }
.clear { clear: both; height: 0; line-height: 0; }
.floatright { float: right; }
</style>
</head>
<body>
<h2>Comb Sort in PHP</h2>
<form action="" method="post">
<label>Value No. 1 : </label> <input type="text" name="val_1" value="<?php echo $a; ?>" size="5" maxlength="5" autofocus/><br/><br>
<label>Value No. 2 : </label> <input type="text" name="val_2" value="<?php echo $b; ?>" size="5" maxlength="5"/><br/><br>
<label>Value No. 3 : </label> <input type="text" name="val_3" value="<?php echo $c; ?>" size="5" maxlength="5"/><br/><br>
<label>Value No. 4 : </label> <input type="text" name="val_4" value="<?php echo $d; ?>"size="5" maxlength="5"/><br/><br>
<label>Value No. 5 : </label> <input type="text" name="val_5" value="<?php echo $e; ?>"size="5" maxlength="5"/><br/>
<br />
<input type="submit" value="Sort" name="bubble"/>
<input type="submit" value="Clear" name="clear" />
</form>
<?php
function CombSort(&$data, $count) {
$gap = $count;
$swaps = true;
while ($gap > 1 || $swaps)
{
$gap /= 1.247330950103979;
if ($gap < 1)
$gap = 1;
$i = 0;
$swaps = false;
while ($i + $gap < $count)
{
$igap = $i + $gap;
if ($data[$i] > $data[$igap])
{
$temp = $data[$i];
$data[$i] = $data[$igap];
$data[$igap] = $temp;
$swaps = true;
}
$i++;
}
}
}
if(isset($_POST['bubble']))
{
$arr = array($a,$b,$c,$d,$e);
$orig = implode(",", $arr);
Combsort($arr,5);
$final_sort = implode(",", $arr);
$display_original = "Original Values : " .$orig."<br><br>";
$process_results = "Sorted Values : " .$final_sort."<br>";
echo $display_original;
echo $process_results;
}
?>
</body>
</html>
No comments:
Post a Comment