Имея некоторые трудности с использованием итеративной переменной, используемой для выхода из цикла, для использования для поиска среднего количества возвращаемых значений в 100 раз, когда цикл выполняется. Некоторая предыстория: существует туннель длиной 24 м, необходимый для добычи, прокатывая D6 каждую неделю. На 6 туннель разрушается, и вы должны перезапустить. Для каждого значения на кости вы заработали так далеко (плюс на предыдущей неделе). Сколько времени потребуется, чтобы очистить туннель? Я пытаюсь найти среднее значение этого в 100 попытках.Возьмите итеративную переменную из цикла for
import java.util.Random;
class avgD6{
public static void main(String[] args){
int sum = 0;
for(int x = 0;x<101;x++){
int progress = 0;
for(int i = 0; i>=0;i++){
Random rand = new Random();
int d = rand.nextInt(6)+1; //roll of a six-sided die
if(d==6){
progress = 0; //progress resets, tunnel collapses
}
else{
progress+=d;
}
if(progress>=24){
//System.out.println("The weeks it took was: "+i);
break;
}
}
sum+=i;
}
double avg = sum/x;
System.out.println(avg);
}
}
Это может быть несвязанным, но в общем случае вы не хотите продолжать использовать новую «Случайную» на каждой итерации цикла - просто используйте один и тот же экземпляр «Случайный» для всего. –