ขอรบกวนปรึกษาแนวคิดเกี่ยวกับการวนลูปจับคู่หน่อยครับ
ยากหน่อยน่ะครับ
Date :
2011-05-12 13:26:39
By :
webmaster
เขียนสดนะครับ
Code (PHP)
$ar = array('A','B','C','D','E');
for($i = 0 ; $i <= sizeof($ar)-1 ; $i++){
if($i == 0){continue;}
if($i == 1){
for($j = $i ; $j <= sizeof($ar)-1 ; $j++){
echo $ar[0].$ar[$j];
echo '<br/>';
}
}else if($i == 2){
for($j = $i ; $j <= sizeof($ar)-1 ; $j++){
echo $ar[0].$ar[1].$ar[$j];
echo '<br/>';
}
}else if($i == 3){
for($j = $i ; $j <= sizeof($ar)-1 ; $j++){
echo $ar[0].$ar[1].$ar[2].$ar[$j];
echo '<br/>';
}
}else if($i == 4){
for($j = $i ; $j <= sizeof($ar)-1 ; $j++){
echo $ar[0].$ar[1].$ar[2].$ar[3].$ar[$j];
echo '<br/>';
}
}
}
out put
AB
AC
AD
AE
ABC
ABD
ABE
ABCD
ABCE
ABCDE
Date :
2011-05-13 16:49:26
By :
aprodise
เมพขิง ๆ
Date :
2011-05-13 20:42:51
By :
webmaster
เทพจริง
Date :
2011-05-13 23:14:26
By :
อิอิ
Code (PHP)
<?
function viewAllOutput($str)
{
do{
$len = strlen($str);
if($len < 1)
break;
for($i = 1; $i <= $len; $i++)
listAllOutput($str, $i , $str[0], 0);
$str = substr($str, 1);
}while(1);
}
function listAllOutput($str, $len, $strp, $s)
{
if($len == 1)
echo $strp . "<br />";
else
{
for($i = 1; $i < strlen($str); $i++)
{
listAllOutput(substr($str, $i), $len - 1, $strp . $str[$i], $i);
}
}
}
$str = "ABCDE";
viewAllOutput($str);
?>
Output ออกไม่เรียงนะครับ แต่คงประมาณนี้มั้ง....
ปล. อย่าถามว่าเขียนได้ไง ผมเองก็ยังงงอยู่เหมือนกันครับ
Date :
2011-10-23 22:21:53
By :
NoobzA
Load balance : Server 05