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

回答編集履歴

1

ソースコードを載せました!!

2018/03/26 09:51

投稿

退会済みユーザー
answer CHANGED
@@ -5,4 +5,80 @@
5
5
  特に**1番**についてが知りたいです。
6
6
  理由は、すべて1桁の時、スペースなしの入力で簡単なプログラムが作れるからです。
7
7
 
8
- 以上 よろしくお願いします。
8
+ 以上 よろしくお願いします。
9
+
10
+ <追記>
11
+ いくつか説明させてください。
12
+ 1.入力の2行目で比較したいデータの個数を入力するのでListを使わなくても大丈夫です。
13
+ データを格納したい配列の要素数がわかるので(下のソースではn)その変数を使って宣言しましょう!
14
+ 2.配列にそれぞれデータを格納することで 後は基本に沿ってif文で評価するだけで済みます。
15
+ 3.最初の質問で「データはすべて1桁ですか?」と質問しましたが 
16
+  データがすべて1桁ですと もっと簡単にプログラムが書けるからです。
17
+  例えば 1 3と 入力したとき 1 3を 13と2桁の数字に置き換えることで、
18
+  簡単に比較ができます。
19
+
20
+ 以上で説明を終わりたいと思います。
21
+ 以下 ソースコードです。
22
+ ```Java
23
+ import java.util.Scanner;
24
+
25
+ public class Main {
26
+
27
+ public static void main(String[] args) {
28
+
29
+ Scanner sc = new Scanner(System.in);
30
+ String line = sc.nextLine();
31
+ String []resultArray = line.split(" ");
32
+ int []sample = new int[2];
33
+ String line2 = sc.nextLine();
34
+ int n = Integer.parseInt(line2);
35
+ int [][]data = new int[n][2];
36
+ int flag = 0; /*勝ったら1になる*/
37
+ for(int i = 0; i < 2; i++){
38
+ sample[i] = Integer.parseInt(resultArray[i]);
39
+ }
40
+
41
+ for(int i = 0; i < n; i++){
42
+ String line3 = sc.nextLine();
43
+ String []resultArray2 = line3.split(" ");
44
+ for(int j = 0; j < 2; j++){
45
+ data[i][j] = Integer.parseInt(resultArray2[j]);
46
+ }
47
+
48
+ }
49
+ for(int i = 0; i < n; i++){
50
+ flag = 0;
51
+ if(data[i][0] > sample[0]){
52
+ flag = 1;
53
+ }
54
+ else if(data[i][0] == sample[0]){
55
+ if(data[i][1] > sample[1]){
56
+ flag = 1;
57
+ }
58
+ else if(data[i][1] == sample[1]){
59
+ flag = 2;
60
+ }
61
+ else{
62
+ flag = 0;
63
+ }
64
+ }
65
+ else{
66
+ flag = 0;
67
+ }
68
+ switch (flag) {
69
+ case 0:
70
+ System.out.println(data[i][0] + " " + data[i][1] + ":負け");
71
+ break;
72
+ case 1:
73
+ System.out.println(data[i][0] + " " + data[i][1] + ":勝ち");
74
+ break;
75
+ default:
76
+ System.out.println(data[i][0] + " " + data[i][1] + ":エラー");
77
+ break;
78
+ }
79
+ }
80
+ }
81
+
82
+
83
+ }
84
+ ```