В приведенном ниже примере циклы while имитируют механика, видя 10 используемых двигателей. Каждый двигатель имеет 50% -ный шанс работать или не работать. Мой счетчик переменных отслеживает количество рабочих движков и печатает его в конце программы.
Использование random.nextBoolean() - случайный генератор
Вопрос в том, что правильный и наилучший способ использования rgen.nextBoolean()? Лучше ли поместить метод rgen.nextBoolean в метод, а затем вызвать этот метод из цикла while? Кроме того, я немного смущен, как если (rgen.nextBoolean()) знает, что он оценивает n, если вы конкретно не указываете rgen.nextBoolean() в условии if, что вы даете ему значение n в качестве значения?
import acm.program.*;
import acm.util.*;
public class WorkingEngines extends ConsoleProgram{
public void run(){
int n = 0;
int counter = 0;
while (n < 10) {
if (rgen.nextBoolean()){
counter++;
}
n++;
}
println("out of ten random engines you have" + counter + " working properly");
}
private RandomGenerator rgen = RandomGenerator.getInstance();
}
спасибо, все еще думая об этом –
о чем? может я не понимаю вас, надеюсь, что это было полезно – nachokk