回答編集履歴

2

加筆修正

2021/01/05 00:40

投稿

退会済みユーザー
test CHANGED
@@ -3,3 +3,129 @@
3
3
  echo文の箇所で変数を++(インクリメント)するだけです。
4
4
 
5
5
  もちろん、3パターンそれぞれでカウントするためには、変数が3つ必要ですよね。
6
+
7
+
8
+
9
+ それと、elseifを使う場合と単にifを使う場合とで
10
+
11
+ 意味合いが変わってしまうところもあるので、
12
+
13
+ ズバリ書き直してみました。
14
+
15
+
16
+
17
+ ```php
18
+
19
+ <?php
20
+
21
+ echo <<< EOF
22
+
23
+ <html>
24
+
25
+ <head>
26
+
27
+ <meta charset="UTF-8">
28
+
29
+ <title>PHP</title>
30
+
31
+ </head>
32
+
33
+ <body>
34
+
35
+ <table border="1">
36
+
37
+ <tr>
38
+
39
+ EOF;
40
+
41
+
42
+
43
+ // 変数の初期化は、主な処理が始まる前にやる
44
+
45
+ $count_30 = 0;
46
+
47
+ $count_5 = 0;
48
+
49
+ $count_3 = 0;
50
+
51
+
52
+
53
+ for ($i = 1; $i <=1000; $i++) {
54
+
55
+ if ($i % 30 === 0) { // 30の倍数であることを確認したときの処理がここだから
56
+
57
+ echo "T,S,\n";
58
+
59
+ $count_30++; // 30の倍数用カウンターを+1
60
+
61
+ } elseif ($i % 5 === 0) { // 30の倍数でなく5の倍数であることを確認したときの処理がここだから
62
+
63
+ echo "T\n";
64
+
65
+ $count_5++; // 5の倍数用カウンターを+1
66
+
67
+ } elseif ($i % 3 === 0) { // 30の倍数でなく5の倍数でもなく3の倍数であることを確認したときの処理がここだから
68
+
69
+ echo "S\n";
70
+
71
+ $count_3++; // 3の倍数用カウンターを+1
72
+
73
+ } else {
74
+
75
+ echo "$i\n";
76
+
77
+ }
78
+
79
+
80
+
81
+ if ($i % 30 === 0) { // 30の倍数であることを確認したときの処理がここだから
82
+
83
+ $count_30++; // 30の倍数用カウンターを+1
84
+
85
+ }
86
+
87
+ if ($i % 5 === 0) { // 5の倍数であることを確認したときの処理がここだから
88
+
89
+ $count_5++; // 5の倍数用カウンターを+1
90
+
91
+ }
92
+
93
+ if ($i % 3 === 0) { // 3の倍数であることを確認したときの処理がここだから
94
+
95
+ $count_3++; // 3の倍数用カウンターを+1
96
+
97
+ }
98
+
99
+ }
100
+
101
+
102
+
103
+ // カウントした結果を出力するなら、主な処理が終わった後にやる
104
+
105
+ echo $count_30 . "\n";
106
+
107
+ echo $count_5 . "\n";
108
+
109
+ echo $count_3 . "\n";
110
+
111
+
112
+
113
+ echo <<< EOF
114
+
115
+ </tr>
116
+
117
+ </table>
118
+
119
+ </body>
120
+
121
+ </html>
122
+
123
+ EOF;
124
+
125
+
126
+
127
+ ```
128
+
129
+
130
+
131
+ と認識しました。

1

加筆

2021/01/05 00:40

投稿

退会済みユーザー
test CHANGED
@@ -1,3 +1,5 @@
1
1
  基本的には、カウント用の変数を0で初期化して用意し、
2
2
 
3
3
  echo文の箇所で変数を++(インクリメント)するだけです。
4
+
5
+ もちろん、3パターンそれぞれでカウントするためには、変数が3つ必要ですよね。