Форум сайта python.su
0
Дано 3 переменных
a=1000
b=a
c=b
на данный момент они все ссылаются на один и тот же объект. Необходимо организовать бесконечный цикл, на каждой итерации(каждом шаге) которого, каждая переменная с 5-ю процентной вероятностью может быть равна строке “ссылка утрачена”. Необходимо вывести за сколько итераций все три переменные перестанут ссылаться на изначальный объект.
Для нахождения вероятности достаточно использовать модуль random и операторы сравнения.
Прим. использования модуля рандом
>>> import random
>>> random.random()
0.4371512800735169
>>> random.random()
0.8640177435699168
функция random из модуля random, возвращает случайную величину в диапазоне от 0 до 1.
Для выхода из цикла используется оператор break
Может кто-то объяснить как высчитать эти 5% и количество итераций?
Офлайн
4
import random a="" b="" c="" a_ver=0 b_ver=0 c_ver=0 chet=1 while a!="Ссылка утрачена" and b!="Ссылка утрачена" and c!="Ссылка утрачена": if a!="Ссылка утрачена": a_ver=random.random() if a_ver<=0.05: a="Ссылка утрачена" if b!="Ссылка утрачена": b_ver=random.random() if b_ver<=0.05: b="Ссылка утрачена" if c!="Ссылка утрачена": c_ver=random.random() if c_ver<=0.05: c="Ссылка утрачена" chet+=1 print("Понадобилось ", chet, " итераций")
Офлайн
4
5 процентов от единицы это - 0.05
поэтому это число я поставил для проверки попадания случайной величины
если это число поменять например на 0.1, то будет подсчёт вероятности 10%
Офлайн