如何使用PHP获得以下输出
我的示例所需输出应该是如何使用PHP获得以下输出,php,algorithm,for-loop,Php,Algorithm,For Loop,我的示例所需输出应该是 1 2 3 4 5 2 4 3 3 4 2 5 4 3 2 1 这是我的PHP代码 for($i=1;$i <= 5;$i++) { for($j=1;$j<=$i;$j++) { echo "$j"; } for($y=0;$y<(5-$i)*4;$y++) { echo ' '; } for($l=$i;$l>0;$l--)
1 2 3 4 5
2 4
3 3
4 2
5 4 3 2 1
这是我的PHP代码
for($i=1;$i <= 5;$i++) {
for($j=1;$j<=$i;$j++) {
echo "$j";
}
for($y=0;$y<(5-$i)*4;$y++) {
echo ' ';
}
for($l=$i;$l>0;$l--) {
echo "$l";
}
echo "<br/>";
}
请设法解决我的问题。提前感谢。对于($i=1;$i=1;$i--){
for($i=1; $i<=5; $i++){
echo $i." ";
}
echo "<br />";
for($i=2; $i<=5; $i++){
if($i==5){
echo $i;
}
else{
echo $i." ";
if($i==2){
echo (4)."<br />";
}
if($i==3){
echo (3)."<br />";
}
if($i==4){
echo (2)."<br />";
}
}
}
echo " ";
for($i=4; $i>=1; $i--){
echo $i." ";
}
echo$i.“”;
}
@我想Mark有最好的解决方案。下面是一个针对任意1字符值数组的快速解决方案:
$values = range(1,7);
$count = count($values);
foreach($values as $k=>$v) {
if($k == 0)
echo implode(" ", $values), "\n";
elseif($k == $count-1)
echo implode(" ", array_reverse($values)), "\n";
else
echo $v, " ", str_repeat(" ", $count-2), $values[$count-1-$k], "\n";
}
这将产生:
1 2 3 4 5 6 7
2 6
3 5
4 4
5 3
6 2
7 6 5 4 3 2 1
$count=5;
$last=0;
对于($i=1;$i看起来像是学校作业!:pIt是面试测试。我没能解决:(@RonakPatelDid他们特别要求你使用循环?在这方面,将尽快发布解决方案。是否强制使用循环?谢谢你的回答。是的,Mark解决了我的问题。:)
1 2 3 4 5 6 7
2 6
3 5
4 4
5 3
6 2
7 6 5 4 3 2 1
$count = 5;
$last = 0;
for ($i = 1; $i <= $count; $i++) {
if($i == 1) {
for ($x = 1; $x <= 5; $x++) {
echo $x . ' ';
}
$last = $x;
} elseif ($i == 5) {
for ($b = 5; $b >= 1; $b--) {
echo $b . ' ';
}
} else{
for($c=1; $c <= 5; $c++) {
if($c == 1) {
echo $i . ' ';
} elseif ($c == 5) {
echo ($last - $i) . ' ' ;
} else {
echo ' ';
}
}
}
echo '<br>';
}