2016-05-12 8 views
0

Es gab mir ein Beispiel, aber wie kann ich es berechnen?Bei einer Zahl, erstellen Sie eine Menge von 2-Tupel, deren Summe gleich der angegebenen Nummer ist beginnend mit (1, 1)

enter code here 
create_dice_sets(6) --> ([(1, 5), (2, 4), (3, 3), (4, 2), (5, 1)]) 
create_dice_sets(2) --> [(1, 1)] 
create_dice_sets(1) --> [()] 

das habe ich angegeben.

enter code here 
def create_dice_sets(number): 
    #Fill your code here. 
    return result 

print(create_dice_sets(6)) 
+1

Stack-Überlauf ist kein Code schriftlich Service. Probieren Sie es aus und kommen Sie zurück, wenn Sie nicht weiterkommen – Keatinge

Antwort

1

Sie können zwischen 1 und der vorgegebenen Nummer über den Wertebereich durchlaufen und ein Tupel mit dem Wert i und number - i bei jeder Gelegenheit erstellen:

Ich denke, das eine Hausaufgabe ist so gehe ich davon aus Sie Es ist nicht erlaubt, eine eingebaute Funktion dafür zu verwenden.

>>> def create_dice_sets(number): 
...  result = [] 
...  for i in range(1, number): 
...   result.append((i, number - i)) 
...  return result 

Btw, gibt es Fehler im Code für die gegebene Zahl gleich 1.

Demo:

>>> create_dice_sets(6) 
[(1, 5), (2, 4), (3, 3), (4, 2), (5, 1)] 

>>> create_dice_sets(2) 
[(1, 1)] 

>>> create_dice_sets(1) 
[] 
Verwandte Themen