1

PHP コードで文字 T を作成する必要があります。

<?php

echo "<pre>";
for ($row > 2; $row < 15; $row++) {
 for ($column = 2; $column < 12; $column++) {
 if (($row < 2 || $row < 2) || ($column < 2 || $column >= 6)) {
 echo "*";
 } 
 else echo " ";
 }
 echo "\n"; 
}
echo "</pre>";
?>
4

3 に答える 3

0

コードにいくつかのバグがあります。

for ($row > 2; $row < 15; $row++) {
 for ($column = 2; $column < 12; $column++) {

なぜ と を使う$row > 2$column = 2ですか?ゼロから始めるだけです。

 if (($row < 2 || $row < 2) || ($column < 2 || $column >= 6)) {

それらが同じである場合、なぜ$row < 2真であるか真であるかを確認するのはなぜですか?$row < 2

次に例を示します。

echo "<pre>";
for($i=0; $i <= 10; $i++){
  for($j = 0; $j < 10; $j++){
    if($i > 2 && ($j < 3 || $j > 6)){
      echo " ";
    }else{
      echo "*";
    }
  }
  echo "\n";
}
于 2013-08-07T17:28:08.617 に答える
0

forループを開始します$row = 0

for ($row = 0; $row < 15; $row++) {

最初の 2 行を無視して、垂直線のみを描画していました

また($row < 2 || $row < 2)、同じです$row < 2


詳細情報が必要な場合は、@ j08691が正確な質問を見つけました

于 2013-08-07T17:18:29.510 に答える
0
for ($row > 2; $row < 15; $row++) {

この条件は間違っており、次のようにする必要があります。

for ($row = 0; $row < 15; $row++) { 

と:

if (($row < 2 || $row < 2)

それは間違っていて、おそらくあなたが思っていることをしません。

リンク先のスレッドj08691のコードには正しい解決策が含まれており、それを使用できます。

<?php

echo "<pre>";
for ($row = 0; $row < 15; $row++) {
for ($column = 0; $column <10; $column++) {
if (($row < 1 || $row > 15) ||( $column == 4)) {
echo "*";
} 
else echo " ";
}
echo "\n";
} 
echo "</pre>";

?>

ライブデモをご覧ください。

于 2013-08-07T17:30:14.333 に答える