質問編集履歴

2

少しまとめてみました。

2020/12/15 12:49

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -6,13 +6,11 @@
6
6
 
7
7
 
8
8
 
9
- 入力
9
+ 入力
10
10
 
11
11
  abcdef
12
12
 
13
13
  2
14
-
15
-
16
14
 
17
15
  出力結果
18
16
 
@@ -24,15 +22,15 @@
24
22
 
25
23
 
26
24
 
27
- 1行目にNの文字列が与えられます。
25
+ 1行目にNの文字列が与えられます。(ここでは"abcdef")
28
26
 
29
- 2行目に与えられるN番目の文字を出力しなさい。
27
+ 2行目にはNの整数が与えられるので、そのN番目の文字を出力しなさい。(ここでは2)
30
28
 
31
29
  という問題で、上記のような入力と出力結果になるようにとの事なのですが、できません。
32
30
 
33
31
 
34
32
 
35
- まずは
33
+ ####試した事
36
34
 
37
35
  $input = "abcdef";
38
36
 
@@ -40,7 +38,7 @@
40
38
 
41
39
  echo $i;
42
40
 
43
- としてみましたが、文字列がNの為、文字列の文字が追加等あった時に対応しませんでした。
41
+ としてみましたが、文字列がNの為、文字列の変更や追加追加等に対応しませんでした。
44
42
 
45
43
  次にforを使用したらどうなるのかと
46
44
 
@@ -56,21 +54,7 @@
56
54
 
57
55
  としてみましたが、1行目はそもそも文字列なので実装できませんでした。
58
56
 
59
- ならば試しにと
60
-
61
- $input = "abcdef";
62
-
63
- for($i = a; $i <= $input; $i++){
64
-
65
- $i = substr($input, 1, 1);
66
-
67
- echo $i;
68
-
69
- }
70
-
71
- としてみました。結果は判ってましたが、試さないと気が済まない質で。
72
-
73
- そしてここから先はどん詰まりで、ドットインストールを見たり、ネットで検索をかけたり、一度文字列を一文字ずつ配列に入れて、そこから出力を試みてみましたが、文字列の文字の追加時にやはり対応できませんでした。
57
+ 次に一度文字列を一文字ずつ配列に入れて、そこから出力を試みてみましたが、文字列の文字の追加時にやはり対応できませんでした。
74
58
 
75
59
  $input = "abcdef";
76
60
 
@@ -80,15 +64,7 @@
80
64
 
81
65
 
82
66
 
83
- while($input = fgets(STDIN)) {
84
-
85
- $s[] = trim($input);
86
-
87
- print_r($s);
88
-
89
- }
90
-
91
- 等、後はstr_replace strpos等も試しましたが、無理でした。
67
+ 後はstr_replace strpos等も試しましたが、無理でした。
92
68
 
93
69
 
94
70
 

1

試した事をほぼ全て書き出しました。

2020/12/15 12:49

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -22,10 +22,80 @@
22
22
 
23
23
  上記のような出力をしたい場合、どうすればいいでしょうか?
24
24
 
25
- できる限り調べ、文字列を扱う関数などを書いて試すもうまくいきません。
26
25
 
26
+
27
+ 1行目にNの文字列が与えられます。
28
+
29
+ 2行目に与えられるN番目の文字を出力しなさい。
30
+
27
- 数時間奮闘してお手になこちらに質問させていただきました
31
+ という問題で、記のような入力と出力結果になるようにとの事なのですがきません
28
32
 
29
33
 
30
34
 
35
+ まずは
36
+
37
+ $input = "abcdef";
38
+
39
+ $i = substr($input, 1, 1);
40
+
41
+ echo $i;
42
+
43
+ としてみましたが、文字列がNの為、文字列の文字が追加等あった時に対応しませんでした。
44
+
45
+ 次にforを使用したらどうなるのかと
46
+
47
+ $input = "abcdef";
48
+
49
+ for($i = 1; $i <= $input; $i++){
50
+
51
+ $i = substr($input, 1, 1);
52
+
53
+ echo $i;
54
+
55
+ }
56
+
57
+ としてみましたが、1行目はそもそも文字列なので実装できませんでした。
58
+
59
+ ならば試しにと
60
+
61
+ $input = "abcdef";
62
+
63
+ for($i = a; $i <= $input; $i++){
64
+
65
+ $i = substr($input, 1, 1);
66
+
67
+ echo $i;
68
+
69
+ }
70
+
71
+ としてみました。結果は判ってましたが、試さないと気が済まない質で。
72
+
73
+ そしてここから先はどん詰まりで、ドットインストールを見たり、ネットで検索をかけたり、一度文字列を一文字ずつ配列に入れて、そこから出力を試みてみましたが、文字列の文字の追加時にやはり対応できませんでした。
74
+
75
+ $input = "abcdef";
76
+
77
+ $input = ["a", "b", "c", "d", "e", "f"];
78
+
79
+ echo $input[1];
80
+
81
+
82
+
83
+ while($input = fgets(STDIN)) {
84
+
85
+ $s[] = trim($input);
86
+
87
+ print_r($s);
88
+
89
+ }
90
+
91
+ 等、後はstr_replace strpos等も試しましたが、無理でした。
92
+
93
+
94
+
95
+ 正直、今の自分の知識ではもはや何構文を使えばいいのか? というところまできていて、八方ふさがりです。
96
+
97
+
98
+
99
+ こんなの努力じゃない、とか、見当違いだ等、ご意見はたくさんあると思います。
100
+
31
- 初歩的な質問と思いますが、どうかよろしくお願いしま。
101
+ 初歩的な質問と思いますが、どうかよろしくお願いしま。