We gaan op zoek naar alle natuurlijke getallen strikt kleiner dan $$Z$$ die als product van precies $$N$$ verschillende priemfactoren (dus GEEN machten van priemfactoren, behalve macht 1) kunnen geschreven worden, waarbij al deze priemfactoren in het gesloten interval $$[a, b]$$ liggen (1 wordt NIET als priemgetal beschouwd).

Programmeer de functie zoek_priemproduct() met als argumenten:

Het resultaat van de functie is een woordenboek, met als sleutel een tuple dat de priemfactoren, stijgend geordend voorstelt, en als waarde het bijhorend product.

TIP:Je kan onderstaande functie gebruiken, die aangeeft een het natuurlijke argument n al dan niet priem is.

def priem(n):
    if n<2:
        return False
    for i in range(2, int((n**0.5)+1)):
        if n % i ==0:
            return False
    return True

Voorbeelden

zoek_priemproduct(1, 10, 120, 3)
#{(2, 3, 5): 30, (2, 3, 7): 42, (2, 5, 7): 70, (3, 5, 7): 105}
zoek_priemproduct(10, 20, 1000, 2)
#{(11, 13): 143, (11, 17): 187, (11, 19): 209, (13, 17): 221, (13, 19): 247, (17, 19): 323}