質問編集履歴

11

文章の編集

2019/12/07 16:59

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -53,8 +53,6 @@
53
53
  例ですが、入力データ1の場合は、lines[0]に5が格納されており、lines[1]〜[5]まで出力しないといけないという事です。(出力の際は改行区切りで出力しないといけないルールです)
54
54
 
55
55
  上記入力データ1,2を書きましたが、これはあくまで入力例であり、実際には入力されたデータは隠されており見る事ができません。
56
-
57
- (lines[0]に格納させている数字の値の文だけ出力が必要)
58
56
 
59
57
 
60
58
 

10

文章の修正

2019/12/07 16:59

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -2,7 +2,65 @@
2
2
 
3
3
 
4
4
 
5
+ 実行環境はwebサイト(学習サイト)上にあります。
6
+
7
+ 入力データは、
8
+
9
+ 入力例1の場合
10
+
11
+ 5
12
+
13
+ 3
14
+
15
+ 5
16
+
17
+ 19
18
+
19
+ 1
20
+
21
+ 2
22
+
23
+ 入力データ2の場合
24
+
25
+ 10
26
+
27
+ 2
28
+
29
+ 3
30
+
31
+ 4
32
+
33
+ 5
34
+
35
+ 4
36
+
37
+ 3
38
+
39
+ 2
40
+
41
+ 1
42
+
43
+ 1
44
+
45
+ 8
46
+
47
+ になっています。
48
+
49
+ この入力データは変数linesに配列として格納されており、
50
+
51
+ インデックス[0]番目は、以降インデックスの数(n個)を表しております。
52
+
53
+ 例ですが、入力データ1の場合は、lines[0]に5が格納されており、lines[1]〜[5]まで出力しないといけないという事です。(出力の際は改行区切りで出力しないといけないルールです)
54
+
55
+ 上記入力データ1,2を書きましたが、これはあくまで入力例であり、実際には入力されたデータは隠されており見る事ができません。
56
+
57
+ (lines[0]に格納させている数字の値の文だけ出力が必要)
58
+
59
+
60
+
61
+ 今回の質問ですが
62
+
5
- という問題たのですが、for文を2回書いている所が気になります。(自分で書いておきながら)
63
+ 問題たのですが、for文を2回書いている所が気になります。
6
64
 
7
65
  なぜか1回目のfor文の末尾に```console.log(arr[i]);```を書くと
8
66
 
@@ -16,7 +74,7 @@
16
74
 
17
75
  19
18
76
 
19
- と出力されてしまいます。
77
+ と出力されてしまいます。(入力例1の場合)
20
78
 
21
79
  なぜ、このような出力結果になってしまうのでしょうか?
22
80
 

9

コードの修正

2019/12/07 16:58

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -93,73 +93,3 @@
93
93
 
94
94
 
95
95
  });
96
-
97
- コード
98
-
99
- ```
100
-
101
-
102
-
103
- ###
104
-
105
- あっているかどうかは分かりませんが、
106
-
107
-
108
-
109
- ループされていく値を比較関数(a-b)で比較していけば
110
-
111
- 3→5→19までは比較できるが、「19」以降の「1」、「2」は比較できないため
112
-
113
- 「19」が続いてループされているということでしょうか?
114
-
115
-
116
-
117
- a < b (判定○ 処理する)
118
-
119
- a > b (判定× 処理しない)※スキップ
120
-
121
- a == b (判定○ 処理する)
122
-
123
-
124
-
125
- 3 arr[1]
126
-
127
- ↓ 3 < 5 (判定○ 処理する)
128
-
129
- 5 arr[2]
130
-
131
- ↓ 5 < 19 (判定○ 処理する)
132
-
133
- 19 arr[3]
134
-
135
- ↓ 19 < 1 (判定× 処理しない)※スキップ
136
-
137
- 1(19) arr[4]
138
-
139
- ↓ 19 < 2 (判定× 処理しない)※スキップ
140
-
141
- 2(19) arr[5]
142
-
143
- ↓ 19 < 3 (判定× 処理しない)※スキップ
144
-
145
- 3(19) arr[1]
146
-
147
- ↓ 19 < 5 (判定× 処理しない)※スキップ
148
-
149
- 5(19) arr[2]
150
-
151
- ↓ 19 == 19 (判定○ 処理する)
152
-
153
- 19 arr[3]
154
-
155
- ↓ 
156
-
157
-
158
-
159
-
160
-
161
-
162
-
163
-
164
-
165
- みたいな事が起こっているのでしょうか?

8

追記

2019/12/07 06:19

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -97,3 +97,69 @@
97
97
  コード
98
98
 
99
99
  ```
100
+
101
+
102
+
103
+ ###
104
+
105
+ あっているかどうかは分かりませんが、
106
+
107
+
108
+
109
+ ループされていく値を比較関数(a-b)で比較していけば
110
+
111
+ 3→5→19までは比較できるが、「19」以降の「1」、「2」は比較できないため
112
+
113
+ 「19」が続いてループされているということでしょうか?
114
+
115
+
116
+
117
+ a < b (判定○ 処理する)
118
+
119
+ a > b (判定× 処理しない)※スキップ
120
+
121
+ a == b (判定○ 処理する)
122
+
123
+
124
+
125
+ 3 arr[1]
126
+
127
+ ↓ 3 < 5 (判定○ 処理する)
128
+
129
+ 5 arr[2]
130
+
131
+ ↓ 5 < 19 (判定○ 処理する)
132
+
133
+ 19 arr[3]
134
+
135
+ ↓ 19 < 1 (判定× 処理しない)※スキップ
136
+
137
+ 1(19) arr[4]
138
+
139
+ ↓ 19 < 2 (判定× 処理しない)※スキップ
140
+
141
+ 2(19) arr[5]
142
+
143
+ ↓ 19 < 3 (判定× 処理しない)※スキップ
144
+
145
+ 3(19) arr[1]
146
+
147
+ ↓ 19 < 5 (判定× 処理しない)※スキップ
148
+
149
+ 5(19) arr[2]
150
+
151
+ ↓ 19 == 19 (判定○ 処理する)
152
+
153
+ 19 arr[3]
154
+
155
+ ↓ 
156
+
157
+
158
+
159
+
160
+
161
+
162
+
163
+
164
+
165
+ みたいな事が起こっているのでしょうか?

7

コードの編集

2019/12/07 05:13

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -74,9 +74,9 @@
74
74
 
75
75
  arr.push(lines[i+1]);
76
76
 
77
- // arr.sort(compare); 編集前
77
+ // arr.sort(compare); 編集前
78
78
 
79
- // console.log(arr[i]);
79
+ // console.log(arr[i]);
80
80
 
81
81
  }
82
82
 

6

編集

2019/12/07 03:13

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -80,7 +80,7 @@
80
80
 
81
81
  }
82
82
 
83
-     arr.sort(compare); 編集後
83
+     arr.sort(compare); // 編集後
84
84
 
85
85
 
86
86
 

5

コードの編集

2019/12/07 03:10

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -74,11 +74,13 @@
74
74
 
75
75
  arr.push(lines[i+1]);
76
76
 
77
+ // arr.sort(compare); 編集前
78
+
77
79
  // console.log(arr[i]);
78
80
 
79
81
  }
80
82
 
81
-     arr.sort(compare);
83
+     arr.sort(compare); 編集後
82
84
 
83
85
 
84
86
 

4

コードの修正

2019/12/07 03:09

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -74,11 +74,11 @@
74
74
 
75
75
  arr.push(lines[i+1]);
76
76
 
77
- arr.sort(compare);
78
-
79
77
  // console.log(arr[i]);
80
78
 
81
79
  }
80
+
81
+     arr.sort(compare);
82
82
 
83
83
 
84
84
 

3

文の追加

2019/12/07 02:41

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
 
4
4
 
5
- という問題を解いたのですが、for文を2回書いている所が気になります。
5
+ という問題を解いたのですが、for文を2回書いている所が気になります。(自分で書いておきながら)
6
6
 
7
7
  なぜか1回目のfor文の末尾に```console.log(arr[i]);```を書くと
8
8
 

2

コードの修正

2019/12/07 00:53

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -76,7 +76,7 @@
76
76
 
77
77
  arr.sort(compare);
78
78
 
79
- console.log(arr[i]);
79
+ // console.log(arr[i]);
80
80
 
81
81
  }
82
82
 

1

文の追加

2019/12/07 00:52

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -4,11 +4,23 @@
4
4
 
5
5
  という問題を解いたのですが、for文を2回書いている所が気になります。
6
6
 
7
- なぜか1回目のfor文
7
+ なぜか1回目のfor文の末尾に```console.log(arr[i]);```を書くと
8
8
 
9
+ 3
9
10
 
11
+ 5
10
12
 
13
+ 19
11
14
 
15
+ 19
16
+
17
+ 19
18
+
19
+ と出力されてしまいます。
20
+
21
+ なぜ、このような出力結果になってしまうのでしょうか?
22
+
23
+ ご回答よろしくお願いします。
12
24
 
13
25
 
14
26