将数字分为两个随机部分

时间:2018-09-22 02:11:06

标签: python-3.x

我有一个数字,让它为17。我想将其随机分为两部分,以使这些部分的总和得出结果17。 13 + 4,12 + 5 ...但是我也希望这两部分的数字不能为2。 Python中的任何算法或代码。请帮忙。

1 个答案:

答案 0 :(得分:1)

使用random.randint()生成第一个数字,然后从n中减去它,得到第二个数字。 if else语句确保num1和num2都不等于2。希望这会有所帮助!

import random

def break_num(n):

    while True:

        num1 = random.randint(1, n - 1)
        num2 = n - num1

        if num1 != 2 and num2 != 2:
            break
        else:
            continue

    print(f'{num1} + {num2}')