Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?
- $data = array(2,4,6,3,5,7,10,9,8,1,0);
- $n = 0;
- // assign
- $maxmin = array($data[0],0,$data[0]);
- //--------------------
- // first compare
- //--------------------
- $i=1;
- $max = $maxmin[0];
- $min = $maxmin[2];
- $gap = $max - $min; //gap between max and min
- $gapmax = $max - $data[$i]; //gapmax between max and data
- $gapmin = $min - $data[$i]; //gapmin between min and data
- //if abs| gapmax + gapmin | > $diff then it will be max or min
- if(sqrt(pow($gapmax+$gapmin,2))>$gap){
- //select index to determine max or min value
- $index = ($gapmax+$gapmin)/sqrt(pow($gapmax+$gapmin,2))+1;
- $maxmin[$index] = $data[$i];
- }
- //--------------------
- // second compare
- //--------------------
- $i++;
- $max = $maxmin[0];
- $min = $maxmin[2];
- $gap = $max - $min; //gap between max and min
- $gapmax = $max - $data[$i]; //gapmax between max and data
- $gapmin = $min - $data[$i]; //gapmin between min and data
- //if abs| gapmax + gapmin | > $diff then it will be max or min
- if(sqrt(pow($gapmax+$gapmin,2))>$gap){
- //select index to determine max or min value
- $index = ($gapmax+$gapmin)/sqrt(pow($gapmax+$gapmin,2))+1;
- $maxmin[$index] = $data[$i];
- }
- //--------------------
- // third compare
- //--------------------
- $i++;
- $max = $maxmin[0];
- $min = $maxmin[2];
- $gap = $max - $min; //gap between max and min
- $gapmax = $max - $data[$i]; //gapmax between max and data
- $gapmin = $min - $data[$i]; //gapmin between min and data
- //if abs| gapmax + gapmin | > $diff then it will be max or min
- if(sqrt(pow($gapmax+$gapmin,2))>$gap){
- //select index to determine max or min value
- $index = ($gapmax+$gapmin)/sqrt(pow($gapmax+$gapmin,2))+1;
- $maxmin[$index] = $data[$i];
- }
- //--------------------
- // 4th compare
- //--------------------
- $i++;
- $max = $maxmin[0];
- $min = $maxmin[2];
- $gap = $max - $min; //gap between max and min
- $gapmax = $max - $data[$i]; //gapmax between max and data
- $gapmin = $min - $data[$i]; //gapmin between min and data
- //if abs| gapmax + gapmin | > $diff then it will be max or min
- if(sqrt(pow($gapmax+$gapmin,2))>$gap){
- //select index to determine max or min value
- $index = ($gapmax+$gapmin)/sqrt(pow($gapmax+$gapmin,2))+1;
- $maxmin[$index] = $data[$i];
- }
- //--------------------
- // 5th compare
- //--------------------
- $i++;
- $max = $maxmin[0];
- $min = $maxmin[2];
- $gap = $max - $min; //gap between max and min
- $gapmax = $max - $data[$i]; //gapmax between max and data
- $gapmin = $min - $data[$i]; //gapmin between min and data
- //if abs| gapmax + gapmin | > $diff then it will be max or min
- if(sqrt(pow($gapmax+$gapmin,2))>$gap){
- //select index to determine max or min value
- $index = ($gapmax+$gapmin)/sqrt(pow($gapmax+$gapmin,2))+1;
- $maxmin[$index] = $data[$i];
- }
- //--------------------
- // 6th compare
- //--------------------
- $i++;
- $max = $maxmin[0];
- $min = $maxmin[2];
- $gap = $max - $min; //gap between max and min
- $gapmax = $max - $data[$i]; //gapmax between max and data
- $gapmin = $min - $data[$i]; //gapmin between min and data
- //if abs| gapmax + gapmin | > $diff then it will be max or min
- if(sqrt(pow($gapmax+$gapmin,2))>$gap){
- //select index to determine max or min value
- $index = ($gapmax+$gapmin)/sqrt(pow($gapmax+$gapmin,2))+1;
- $maxmin[$index] = $data[$i];
- }
- //--------------------
- // 7th compare
- //--------------------
- $i++;
- $max = $maxmin[0];
- $min = $maxmin[2];
- $gap = $max - $min; //gap between max and min
- $gapmax = $max - $data[$i]; //gapmax between max and data
- $gapmin = $min - $data[$i]; //gapmin between min and data
- //if abs| gapmax + gapmin | > $diff then it will be max or min
- if(sqrt(pow($gapmax+$gapmin,2))>$gap){
- //select index to determine max or min value
- $index = ($gapmax+$gapmin)/sqrt(pow($gapmax+$gapmin,2))+1;
- $maxmin[$index] = $data[$i];
- }
- //--------------------
- // 8th compare
- //--------------------
- $i++;
- $max = $maxmin[0];
- $min = $maxmin[2];
- $gap = $max - $min; //gap between max and min
- $gapmax = $max - $data[$i]; //gapmax between max and data
- $gapmin = $min - $data[$i]; //gapmin between min and data
- //if abs| gapmax + gapmin | > $diff then it will be max or min
- if(sqrt(pow($gapmax+$gapmin,2))>$gap){
- //select index to determine max or min value
- $index = ($gapmax+$gapmin)/sqrt(pow($gapmax+$gapmin,2))+1;
- $maxmin[$index] = $data[$i];
- }
- //--------------------
- // 9th compare
- //--------------------
- $i++;
- $max = $maxmin[0];
- $min = $maxmin[2];
- $gap = $max - $min; //gap between max and min
- $gapmax = $max - $data[$i]; //gapmax between max and data
- $gapmin = $min - $data[$i]; //gapmin between min and data
- //if abs| gapmax + gapmin | > $diff then it will be max or min
- if(sqrt(pow($gapmax+$gapmin,2))>$gap){
- //select index to determine max or min value
- $index = ($gapmax+$gapmin)/sqrt(pow($gapmax+$gapmin,2))+1;
- $maxmin[$index] = $data[$i];
- }
- //--------------------
- // 10th compare
- //--------------------
- $i++;
- $max = $maxmin[0];
- $min = $maxmin[2];
- $gap = $max - $min; //gap between max and min
- $gapmax = $max - $data[$i]; //gapmax between max and data
- $gapmin = $min - $data[$i]; //gapmin between min and data
- //if abs| gapmax + gapmin | > $diff then it will be max or min
- if(sqrt(pow($gapmax+$gapmin,2))>$gap){
- //select index to determine max or min value
- $index = ($gapmax+$gapmin)/sqrt(pow($gapmax+$gapmin,2))+1;
- $maxmin[$index] = $data[$i];
- }
- $result = ($maxmin[2]+$maxmin[0])/2;
Add Comment
Please, Sign In to add comment