Мне нужно добавить счетчик в мою программу, чтобы подсчитать общее количество обработанных групп, допустимых групп и недействительных групп. Кроме того, если одно из обработанных чисел недопустимо> 300 или <0, основной программе следует пропустить обработку остальных партитур и перейти в группу гнезд. Я добавил цикл while с часовым единицей для создания итераций. Теперь он зацикливается, но счетчик работает не так, как мне бы хотелось. и я до сих пор не уверен, как подсчитать недопустимые группы и допустимые группы </p>
import java.util.Scanner;
import java.io.*;
public class BowlingProgram {
public static void main(String[] args) throws IOException {
//instantiate objects
//PrintWriter outputFile= new PrintWriter(System.out);
File myFile=new File ("bowlingScores.txt");
int score1, score2, score3, notValid=0, valid=0, count=0;
Scanner scanner = new Scanner(System.in);
while(count!=-1) {
System.out.print("Please enter score 1 (enter -1 to STOP): ");
score1 = scanner.nextInt();
System.out.print("Please enter score 2 (enter -1 to STOP): ");
score2 = scanner.nextInt();
System.out.print("Please enter score 3 (enter -1 to STOP): ");
score3 = scanner.nextInt();
count++;
validGroup(score1, score2, score3, myFile);
oneGameScore(score1,myFile);
oneGameScore(score2,myFile);
oneGameScore(score3,myFile);
/*while(validGroup(score1,score2,score3,myFile)!=true) {
notValid++;
}
System.out.println("we have processed"+notValid+"invalid scores");
while(validGroup(score1,score2,score3,myFile)==true) {
valid++;
}
System.out.println("we have processed"+valid+"invalid scores");
*/
System.out.println("The average score is " + avg3Scores(score1,score2, score3));
oneGameScore(avg3Scores(score1,score2,score3), myFile);
System.out.println();
System.out.println();
System.out.println();
}
System.out.println("You have processed "+count+" groups.");
public static boolean validGroup(int score1, int score2, int score3, File myFile)
{
if(score1 >300) {
System.out.println("The number you entered for score1 is greater than 300");
return false;
}
if(score1 <0) {
System.out.println("The number you entered for score1 is less than 0");
return false;
}
if(score2 >300) {
System.out.println("The number you entered for score2 is greater than 300");
return false;
}
if(score2 <0) {
System.out.println("The number you entered for score2 is less than 0");
return false;
}
if(score3 >300) {
System.out.println("The number you entered for score3 is greater than 300");
return false;
}
if(score3 <0) {
System.out.println("The number you entered for score3 is less than 0");
return false;
}
System.out.println("This group is valid");
return true;
}
public static void oneGameScore(int score, File myfile) {
if(score <=300 && score >=250)
System.out.println("You've played a proffesional game!");
if(score <=249 && score >=200)
System.out.println("You've played an excellent game!");
if(score <=199 && score >=150)
System.out.println("You've played a very good game!");
if(score <=149 && score >=100)
System.out.println("You've played a good game!");
if(score <=99 && score >=50)
System.out.println("You've played a poor game!");
if(score <=49)
System.out.println("You've played a horrible game");
}
public static int avg3Scores(int sc_1, int sc_2,int sc_3)
{
int avg= (sc_1+sc_2+sc_3)/3;
return avg;
}
}