I am filling a Double Array with a for-loop, the loop runs for how many laps the user enters on line 4. However, as I demonstrate in my picture included:
I enter 3 laps and the question prompts 3 times however my data validation eats one of the inputs I am looking for.
How do I fix this? I feel like its something very simple.
import java.util.Scanner;
public class JK_FINALPRAC1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("Time-Trial Statistics Program\n");
System.out.println("This program will ask you to input split-times for each lap or length of a race. The ");
System.out.println("program will then calculate some basic statistics from the split-times.\n");
System.out.print("Enter the number of laps or lengths in the race: ");
int arraySize = sc.nextInt();
Double[] lapArray = new Double[arraySize];
System.out.println("Now input the elapsed time (split time) in seconds for each lap/length of the race.");
int index = 1;
double currentNum = 0.0;
for(int i=0;i<arraySize;i++){
System.out.print("Time for lap or length #" + index + ": ");
currentNum = sc.nextDouble();
if(currentNum > 0 && currentNum < 61){
lapArray[i] = currentNum;
index++;
}else if(currentNum<0 || currentNum >60){
System.out.println("Invalid input! Time must be between 0 and 60.");
}
}
}
