Pracowałem ostatnio z algorytmami arbitralnej precyzji i jestem niezmiernie ciekawy, jak Python się tym zajmuje. Kiedy wpisuję bardzo duże (600-1000) cyfry podzielone przez inną podobnie dużą liczbę, to po prostu działa i kocham to. Mam pliki źródłowe Pythona i mam się dobrze z C, gdzie/gdzie w źródle jest ta część, która rządzi tym podziałem, więc mogę na to patrzeć i być może majstrować przy tym? Moją grą końcową jest praca w teorii liczb w C.Python Pełna precyzja Division Źródło
6
A
Odpowiedz
2
Rdzeń implementacji long/long
w Pythonie 3.3 jest w longobject.c
, jako funkcja x_divrem
.
Implementacja jest wzorowana na dziele Knuth "The Art of Computer Programming", tom. 2 (3 wydanie), rozdział 4.3.1, Algorytm D "Podział nieujemnych liczb całkowitych", za komentarz ze źródła.
+0
jesteś niesamowity. Wygląda na to, że będę dużo czytać w ten weekend. :) – user1601118
Powiązane problemy
- 1. Python: wysoka precyzja time.sleep
- 2. Python: pełna lista modułów
- 3. Division zwraca zerowy
- 4. Division powoduje niesymetryczne nawiasy
- 5. Int division in scala
- 6. java.lang.ArithmeticException: Division jest niezdefiniowana
- 7. Division dwa wektory
- 8. precyzja Math.random()
- 9. Precyzja daty?
- 10. Left Matrix Division i Numpy Solve
- 11. Cython float division PyExc_ZeroDivisionError checking
- 12. Division w skrypcie i zmiennoprzecinkowych
- 13. Integer Division in C++ 11
- 14. Pełna wysokość i pełna szerokość układ CSS
- 15. Cel kopalni pełna i ich pełna poleceń
- 16. Podwójna precyzja OpenCL inna niż podwójna precyzja procesora
- 17. Skrypt w języku Python wypisujący jego źródło
- 18. Jak uzyskać źródło odpowiadające węzłowi Python AST?
- 19. C# Wysoka podwójna precyzja
- 20. Precyzja podwójnego po przecinku
- 21. Maksymalna precyzja poniżej nieograniczonej?
- 22. Pełna lista "znajomych" Twittera używających python i tweepy
- 23. zmiennoprzecinkowa precyzja w Visual C++
- 24. precyzja printf ze specyfikatorem "% g"
- 25. Wysoka precyzja matematyki na GPU
- 26. Precyzja renderowania kart paskowych Corona
- 27. JavaScript 64-bitowa precyzja numeryczna
- 28. Java kalkulacja precyzja podwójna przegrana
- 29. Array division- tłumaczenia z MATLAB do Pythona
- 30. Pełna weryfikacja schematu XML
Wierzę, że Python używa [biblioteki GMP] (http://gmplib.org/). – Mysticial
Chcesz szukać w 'Objects/longobject.c' w źródle python2.x. Nie jestem pewien, gdzie to jest w python3.x source – mgilson
Wygląda na to, że jest to funkcja 'l_divmod' oparta na komentarzach. – mgilson