PHP vol.4

頭がどんどん煮えてきました。
疑問が出たら質問するように心がけたいと思います・・・

プログラムを実行する際に・・・

Ctrl-C プログラムを中断する。
Ctrl-S プログラムを一時停止

if文の復習

メモ:if文の中のif文は親のif文の条件を超えることはできない。
以下は復習問題。

<?php
/*
0)ifの復習
変数を一つ用意し、「みかん」という文字を代入しておく。
その後if文も用いて様々な文字と比較し、みかんという文字の時だけ表示する
プログラムを作成してください。
*/
$box ="みかん";
$box1 = "あぽー";
$moji1 = "毒あぽー";

if ($moji1 == $box) {
  echo $box."\n";
} elseif ($moji1 == $box1) {
  echo "Think different\n";
} else {
  echo "404 Not Found\n";
}

for文

決まった回数だけ処理を実行したいときに用いる繰り返し文

for (初期化;条件式;変数の更新) {
  中身
}
初期化 最初の一回だけ行われる
条件式 forが回る条件が書いてある
変数の更新 2回目以降の繰り返しで毎回実行される
<?php
for ($i=0;$i<10;$i++) {
  echo "{$i}\n";
}
実行結果
$ php 03-13.php 
0
1
2
3
4
5
6
7
8
9

問題1

<?php
/*
1−1)forだけを使った問題

数字を1から100まで表示してください。
一回の出力ごとに改行を加える事。


[実行例]
1
2
3
.
.
~
.
.
99
100
*/
for($i=1;$i<=100;$i++) {
  echo $i."\n";
}
<?php
/*
1−2)forだけを使った問題
またこれの逆で100から1まで表示させる。

[実行例]
100
99
98
98
.
.
~
.
.
3
2
1
*/
for($i=100;$i>=1;$i--) {
  echo $i."\n";
}

実行結果は共に省略します。実行例の通りになりました。

問題2

<?php
/*
2)forとifを混ぜた問題

まず始めに変数を一つ用意して好きな文字を代入しておく。
先ほどの1から100まで表示したfor文で、3の倍数の時だけ文字を表示するようにしてください。

[実行例]
1
2
hoge!
4
5
hoge!
7
8
.
.
98
hoge!
100
*/
$hensu = "hoge!";
for($i=1;$i<=100;$i++) {
  if($i%3==0) {
    echo $i.$hensu."\n";
  } else {
    echo $i."\n";
  }
}

問題3

<?php
/*
3)for応用
下記のような図をターミナルに出力してください。

[実行例]
***
***
***

*/
for($i=1;$i<=9;$i++) {
  echo "*";
  if($i%3==0) {
    echo "\n";
  }
}
実行結果
$ php q03.php
***
***
***

問題4

<?php
/*
4)forとif発展
下記のような図をターミナルに出力してください。

[実行例]
★☆★
☆★☆
★☆★
*/
for($i=1;$i<=9;$i++) {
  if($i%2==1) { 
     echo "";
  } else {
     echo "";
  }
  if($i%3==0) {
    echo"\n";
  }
}
実行結果
$ php q04.php
☆★☆
★☆★
☆★☆