Написать лаконичный алгоритм на Python

1 000 руб. за проект
10 июня 2022, 17:22 • 24 отклика • 295 просмотров
Приветствую!
Нужно написать алгоритм выполняющий следующую задачу:

Пусть у нас есть переменные:

Z = любое число;
G = число от 0 до 1, не равное не 1, не 0. Математически принадлежит (0;1).

Далее нам нужно с помощью функции генерации чисел случайно выбрать число A, принадлежащее от Z *(1-G) до Z * (1+G), не включая крайние значения. Математически принадлежит (Z *(1-G); Z * (1+G)).

Далее нам нужно с помощью функции генерации чисел случайно выбрать число B, принадлежащее от Z *(1-G) до Z * (1+G), не включая крайние значения. Математически принадлежит (Z *(1-G); Z * (1+G)).

A может равняться B.

Должно выполняться условие, что модуль разности B и A всегда меньше G, |B - A| < G.

Все переменные могут иметь десятичный вид, с максимальным количеством знаков после запятой =3.

По итогу должны получиться два числа A и B, возможно дробные, где разделить знаков будет запятая, а не точка.

P.S. Цикл который будет перебирать значения А и В пока не выполнится условия не принимаю. И все подобные нерациональные решения тоже.

Также входит ответы на все вопросы по коду и правки.