J'utilise Python dans un environnement de laboratoire Jupyter.

Si je définis cette fonction:

def f(n): 
    return ((n - 1) + 1/2) / n

Quand j'exécute ceci:

f(3) 

La fonction renvoie 0.8333333333333334

Au lieu de cela, je préfère obtenir 5/6 en conséquence.

0
Mario Stefanutti 27 août 2020 à 16:26

2 réponses

Meilleure réponse

Vous devez utiliser le package fractions:

from fractions import Fraction

def f(n): 
  return Fraction(((n - 1) + Fraction(1, 2)), n)

print(f(3))

Imprimera

5/6
1
Selcuk 27 août 2020 à 13:31

Vous pouvez utiliser le module fractions.

from fractions import Fraction 

fraction = Fraction(0.8333333333333334).limit_denominator(10)
0
gmdev 27 août 2020 à 13:32