Как выбрать случайный элемент в списке, не отмеченный во втором столбце?

Как выбрать случайный элемент в списке, не отмеченный во втором столбце?

Итак, я смотрю фильмы, у меня их 177, я поместил все названия в столбец A и придумал, как сделать рандомизацию, чтобы вывести названия, но я хочу иметь столбец, в котором также будут отображаться просмотренные фильмы, и если они уже просмотрены, пропускать просмотренные фильмы, пока не будут просмотрены все фильмы. Мой код на данный момент такой:

=INDIRECT("B"&RANDBETWEEN(1;COUNTA(B21:B178)))

решение1

Я бы предложил добавить столбец со случайным числом. Затем отсортировать все по случайному числу. Посмотрите фильмы в указанном порядке. После того, как вы посмотрите их все, регенерируйте и пересортируйте список.

    239 Movie A
    475 Movie B
    683 Movie C
    241 Movie D
    748 Movie E

После сортировки (в Excel — я предполагаю, что OOCalc сделает то же самое) случайные числа генерируются заново:

    145 Movie A
    978 Movie D
    783 Movie B
    322 Movie C
    773 Movie E

Случайные числа также генерируются заново, когда вы закрываете и снова открываете файл (опять же, по крайней мере, в Excel), поэтому не сортируйте снова, пока не пройдете весь список.

Если вы действительно хотите усложнить задачу, например, если вы также хотите убедиться, что вы не смотрите один и тот же фильм дважды в течение 30 дней (т. е. избежать случайной возможности того, что последний фильм одного сорта станет первым фильмом следующего сорта), вы можете использовать столбец в качестве временной метки для того, когда вы последний раз смотрели его, затем просто сложить 30 и некоторое случайное число, а затем отсортировать. Вы даже можете добавить второй столбец случайных чисел, чтобы обеспечить большую случайность в тех случаях, когда одно и то же случайное число генерируется для нескольких фильмов.

Вариации и возможности практически безграничны.

Связанный контент