さて、私はこのプログラムに 1 週間半取り組んできましたが、本当に近づいているように感じますが、壁にぶつかっています。私はこれについて高低を見てきましたが、確かにJavaのFAQシステムを使用するのはあまり得意ではありません. R S
player1 がスペースで、player2 が移動するフォームにテキストを含む文字列を取り込もうとしています。この後、私は使用しようとしましたcharAt(index)
が、毎回 AIOOBE を取得しています (位置が見つかりません)。機能するものを取得するためだけに、スキャナーでいくつかの行を進めようとしましたが、できません。int
プレイされたゲームとゲームごとのハンドであるとして最初の 2 行を取得しているようです。
import java.util.*;
import java.lang.*;
import java.io.*;
public class rPS{
public static void main(String ... args) throws IOException{
int count = 0;
File myFile = new File("a.txt");
Scanner fin = new Scanner(myFile);
int games = fin.nextInt();
for(int i = 0; i<games; i++){
int rounds = fin.nextInt();
int tie = 0;
int p1win = 0;
int p2win = 0;
for(int j=0; j<rounds; j++){
String line = fin.nextLine();
char p1 = line.charAt(0);
char p2 = line.charAt(2);
if (p1 == p2)
tie = tie + 1;
else if (p1 == 'R'){
if (p2 == 'S')
p1win = p1win + 1;
else if (p2 == 'P')
p2win = p2win + 1;
}else if (p1 == 'P'){
if (p2 == 'S')
p2win = p2win + 1;
else if (p2 == 'R')
p1win = p1win + 1;
}else if (p1 == 'S'){
if (p2 == 'P')
p1win = p1win + 1;
else if (p2 == 'R')
p2win = p2win + 1;
}
}
if(p1win > p2win)
System.out.println("Player 1");
else if(p2win > p1win)
System.out.println("Player 2");
else
System.out.println("Tie!");
}
}
}