Movatterモバイル変換


[0]ホーム

URL:


PEP 240 scares me

Scottieme at nospam.net
Sun Apr 1 18:04:12 EDT 2001


Sorry, I let this go before finishing editting.If converting to rationals scares you, try this based on James Farey's"Farey fractions. def Farey(v, lim):   '''Convert v to a rational with denom <= lim   Named after James Farey, an English surveyor.   No error checking on args -- v >= 0, lim = max denominator,   results are (numerator, denominator) in lowest terms.   Think of (1,0) as infinity.   '''   lower, upper = (0L,1L), (1L,0L)   while 1:     mediant = (lower[0] + upper[0]), (lower[1]+upper[1])     if v * mediant[1] > mediant[0]:         if lim < mediant[1]: return upper         lower = mediant     else:         if lim < mediant[1]: return lower         upper = mediant


More information about the Python-listmailing list

[8]ページ先頭

©2009-2025 Movatter.jp