###問題点・テーマ
マークテストの正解の番号の列を入力させ、其の後に受験者数を入力する。
そしてそれぞれの回答番号を入力する。
そのときのそれぞれの点数(=正解数)を求めるプログラムを作りたいです。
ただし、問題は6問で、全問に回答しているとします。
ex)
1 3 5 6 3 2 //正解の番号
3 //受験者数
1 3 5 6 3 2
2 3 5 2 5 2
1 3 3 6 3 2 //それぞれの回答
###プログラム(未完成です・・・・・・)
lang
1import java.util.*; 2 3public class Main { 4 public static void main(String[] args) { 5 6 int count =0; 7 Scanner sc = new Scanner(System.in); 8 String strmaster = sc.nextLine(); 9 String [] array = strmaster.split(" "); 10 int master[] = new int[6]; 11 12 //正解の配列を作ったつもり 13 for(int i=0;i<6;i++){ 14 master[i] = Integer.parseInt(array[i]); 15 } 16//受験者数を読み込んだつもり 17 int num = sc.nextInt(); 18 19//それぞれの回答をひとつづきの文字列として読み込んだつもり(ArrayListの練習) 20 ArrayList<String> big = new ArrayList<String>(); 21 while (sc.hasNextLine()) { 22 String bigdata = sc.nextLine(); 23 big.add(bigdata); 24 } 25 26//ひとつづきの文字列の回答をばらばらにしたつもり 27 ArrayList<String> small = new ArrayList<String>(); 28 for(int i=0;i<big.size()*6;i++){ 29 small[i] = bigdata.split(" "); 30 } 31
・・・・・・ここまでやって、意味が分からなくなってしまいました。
もしsmall[i]にそれぞれのすうじが格納できていたとして、それをどうやって人ごとの回答にすればよいのか?とか、 全問に回答していない場合は、とかをかんがえているうちに頭がこんがらがってしまいました。
このプログラムは意図通りのことができていますか?
そうでない場合、どこがだめか、また改善案をお教えいただけるとありがたいです。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2017/08/17 14:10