php輸出金字塔
1. 使用php弄出金字塔圖形
<?php
$n=10;//行數
for($i=0;$i<=$n;$i++)//控制行
{
for($k=1;$k<=$n-$i;$k++)//控制*前面的空格
{
echo' ';
}
for($b=1;$b<=($i-1)*2+1;$b++)//控制列
{
echo'*';
}
echo'<br/>';
}
?>
2. 用PHP語言列印輸出對應的「*」金字塔。n=4
$n=4;
for($i=1;$i<=$n;$i++){
for($k=1;$k<=$n-$i;$k++){
echo " ";
}
for($j=1;$j<=($i-1)*2+1;$j++){
echo "*";
}
echo "<br/>";
}
這個是比較簡單的寫法,你也可以進行優化,主要是要理清思路,可以用紙畫出金字塔的圖形,第一行是1個*,第二行是3個*,以此類推得出規律,多思考一下,一理通百理通
3. PHP用for循環列印金字塔
($i-1)是行數減1
($i-1)*2+1是算出這一行應該有的*號個數
4. 用PHP列印輸出對應的「*」金字塔。如N
<?php
$n = 20;
for ($i = 1; $i <= $n; $i ++) {
if ($i % 2 == 0)
continue;
$pcnt = floor(($n - $i)/2);
echo str_repeat(' ', $pcnt), str_repeat('*', $i), str_repeat(' ', $n - $i - $pcnt), PHP_EOL;
}
5. PHP同樣的代碼輸出一個金字塔,空格的表示問題,用全形的空格不是和 一樣么,
這是字體的問題了,瀏覽器默認字體不是等寬的。
在前面加上 echo '<pre>'; 就好了
6. 想知道php應該如何用while列印靠右的半金字塔,就是像圖片這樣的,謝謝
你那邊運行此代碼的話可能不是右對齊,那是因為*和空格寬度不一樣,我這個是加了font-family: Consolas, Monaco, monospace; 樣式才對齊的,,你把代碼放在命令行下運行 就能對齊了
7. 新人求助,學習需要,想要個php輸出從1到100金字塔的代碼,會的幫忙寫下,謝謝! 1 23 345 6789,,到100
<?php
/**
金字塔正序
**/
for($a=1;$a<=10;$a++){
for ($b=10;$b>=$a;$b--){
echo " ";
}
for ($c=1;$c<=$b;$c++){
echo "*"." ";
}
echo "<br />";
}
?>
8. 如何用php語言製作一個數字金字塔呢
for($a=0;$a<7;$a++){
for($b=4;$b>$a;$b--){
echo " ";
}
for($d=0;$d<=$a;$d++){
echo "*";
}
echo "<br>";
}
9. php封裝一個函數,實現列印任意層的金字塔
<?php
functiontower($num)
{
if($num<=0)return'';
for($i=1;$i<=$num;$i++)
{
$str.="<br/>";
for($j=1;$j<=$i;$j++)
{
if($j===1)
{
for($k=1;$k<=$num-$i;$k++)
{
$str.=' ';
}
}
$str.='* ';
}
}
return$str;
}
echotower(20);
結果截圖: