teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

コードの書き直し 上手くいかない場所の表示

2018/09/02 13:24

投稿

tamura0425
tamura0425

スコア37

title CHANGED
File without changes
body CHANGED
@@ -1,59 +1,60 @@
1
- ```ここに言語を入力
2
1
  import java.util.*;
3
2
  import java .util.Scanner;
4
3
  public class Main {
5
- public static void main(String[] args) throws Exception {
4
+ public static void main(String[] args) throws Exception {
6
- Scanner sc = new Scanner(System.in);
5
+ Scanner sc = new Scanner(System.in);
7
-
6
+
8
- System.out.println("2-7");
7
+ System.out.println("2-7");
9
-
8
+
10
- int[][] data = {
9
+ int[][] data = {
11
- {40,10,30,20,50},
10
+ {40,10,30,20,50},
12
- {2,7,6,5,3,1,4},
11
+ {2,7,6,5,3,1,4},
13
- {300,100,200},
12
+ {300,100,200},
14
- };
13
+ };
15
- int i,x;
14
+ int i,x;
16
- int wook;
15
+ int wook;
17
-
16
+
18
- //ソート前表示
17
+ //ソート前表示
19
-
18
+
20
- for(i=0; i<data.length; i++){
19
+ for(i=0; i<data.length; i++){
21
- for(x=0; x<data[0].length; x++){
20
+ for(x=0; x<data[0].length; x++){
22
- System.out.printf("%4d",data[i][x]);
21
+ System.out.printf("%4d",data[i][x]);
22
+
23
-
23
+ }
24
+ System.out.println();
25
+ }
26
+
27
+ //ソート後
28
+ for(i=0; i<data.length; i++){
29
+ for(x=0; x<data[0].length; x++){
30
+ if(data[i][x]<data[i][x+1])
31
+ {
32
+ wook = data[i][x];
33
+ data[i][x] = data[i][x+1];
34
+ data[i][x+1] = wook;
35
+ }
36
+ System.out.print(data[i][x]+" "); //ソート
37
+
38
+ }
39
+ System.out.println();
40
+ }
41
+
42
+
43
+
44
+
45
+ }
24
46
  }
25
- System.out.println();
26
- }
27
47
 
28
- //ソート後
29
- for(i=0; i<data.length; i++){
30
- for(x=0; x<data[0].length; x++){
31
- if(data[i][x]<data[i][x+1])
32
- {
33
- wook = data[i][x];
34
- data[i][x] = data[i][x+1];
35
- data[i][x+1] = wook;
36
- }
37
- System.out.print(data[i][x]+" "); //ソート
38
-
39
- }
40
- System.out.println();
41
- }
42
-
43
-
44
-
45
-
46
- }
47
- }
48
- コード
49
48
  ```2018/9/218:36:25
50
49
  javaの二次元配列のソートについてご質問があります。
51
50
 
52
51
  二次元配列を行ごとに昇順しソートする。
53
52
 
54
53
  学校の課題で上記のような問題が出されたので下記のようなコードを書いたのですが、
54
+ ソート前の配列は表示されるのですがソート後の配列が上手く表示されず、
55
- 上手くいかずまたどのように書き直したよいかわからず困っております。
55
+ またどのように書き直したよいかわからず困っております。
56
56
 
57
+
57
58
  不勉強で申し訳ありませんどなたかご教授いただければ幸いです。
58
59
 
59
60