/
EugenyCh7
/
JavaAndScalaLessons
Обзор
Документация
Войти
/
EugenyCh7
/
JavaAndScalaLessons
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
JavaTest/src/others/ex1/Main.java
69 строк
2 KB
Eugeny Chekmarev
IDEA update
15 июн 2021, 21:11
15 июн 2021, 21:11
47fadf9
Код
Авторство
О чём код?
package others.ex1; import java.util.ArrayList; import java.util.Collections; /** * Главный класс {@link Main} проводит {@link Main#N} экспериментов с {@link Main#D} дверями * * @author Eugeny Chekmarev * @version 1.1 * @see <a href="https://ru.wikipedia.org/wiki/%D0%9F%D0%B0%D1%80%D0%B0%D0%B4%D0%BE%D0%BA%D1%81_%D0%9C%D0%BE%D0%BD%D1%82%D0%B8_%D0%A5%D0%BE%D0%BB%D0%BB%D0%B0"> * Ссылка на статью из Википедии</a> * @since version 1.0 */ public class Main { /** * Статический метод для вызова программы * * @param args аргументы для запуска */ public static void main(String[] args) { int successReplace = 0; int successStay = 0; ArrayList<Door> doors = new ArrayList<>(); for (int i = 1; i < D; i++) doors.add(Door.Goat); doors.add(Door.Auto); for (int i = 0; i < N; i++) { Collections.shuffle(doors); Door[] exits = new Door[2]; exits[0] = doors.get(0); if (exits[0].equals(Door.Goat)) exits[1] = Door.Auto; else exits[1] = Door.Goat; if (exits[0].equals(Door.Auto)) successStay += 1; if (exits[1].equals(Door.Auto)) successReplace += 1; } System.out.printf("Проведено %d экспериментов с %d дверями (коз: %d)\n", N, D, D - 1); System.out.printf("Вероятность выигрыша при смене двери равна %.2f%%\n", 100.0 * successReplace / N); System.out.printf("Вероятность выигрыша без смены двери равна %.2f%%\n", 100.0 * successStay / N); } /** * Константа означающая количество экспериментов */ public static final int N = 10_000; /** * Константа означающая количество дверей <br/> * <code>D - 1</code> - количество коз <br/> * <code>1</code> - количество автомобилей <br/> * * @see Main.Door */ public static final int D = 3; /** * Перечисление, означающее тип двери <br/> * {@link Main.Door#Goat } - коза <br/> * {@link Main.Door#Auto} - автомобиль <br/> */ public enum Door { Goat, Auto } }