Dzielenie z resztą. Liczb ujemnych. A Was jak uczyli dzielić?
Jaki jest wynik z dzielenia i ile wynosi reszta z dzielenia następujących liczb: -12 przez 5 oraz 12 przez -5
e.....o z- #
- #
- #
- #
- #
- #
- #
- 89
Jaki jest wynik z dzielenia i ile wynosi reszta z dzielenia następujących liczb: -12 przez 5 oraz 12 przez -5
e.....o z
Komentarze (89)
najlepsze
Jak dla mnie to to ma sens, tylko z dupy strony...
A w taki.
Wystarczy odwrocic dzialanie.
5 * (-3) + 3 = -12
Skoro działanie odwrotne jest prawda, cale rozumowanie jest prawda. Ale jak powiedzialem... z d.. strony, bo zeby to mialo sens potrzebne jest zalozenie, ze reszta > 0. Kwestia definicji danej przestrzeni.
Działanie modulo n w liczbach całkowitych tworzy relację równoważności. Każdy zbiór liczb równych sobie modulo n tworzy klasę abstrakcji i tak np. Wszystkie liczby podzielne przez 3 należą do jednej klasy abstrakcji (dla działania modulo 3). Podstawowym twierdzeniem o klasach abstrakcji jest, że wszystkie klasy abstrakcji są rozłączne, czyli nie istnieje taki element, który należy do dwóch
-12 / 5 = -3, r.3
12 / -5 = -2, r.2
A jeśli o programowanie chodzi:
- bignumy (języki wysokopoziomowe (ruby itd) zazwyczaj używają tylko takich - ale chodzi mi też o biblioteki np do c++) dają minusowe i plusowe modulo
- arytmetyka sprzętowa (long) daje plusowe modulo
Przynajmniej tak jest zazwyczaj.
-3 = 2 w ciele Z5, a więc
de facto to jedno i to samo.
W przypadku języków programowania to już tylko kwestia założenia przyjętego przez jego twórców dla jednoznaczności...
owszem jest i tak, ale rownie dobrze idac do sklepu i placac dwa zlote za kapuste i trzy zlote za makaron moglbys powiedzec pani sprzedajacej ze nic nie placisz, bo w szkole sie uczyles liczyc w ciele Z5, a tam 3+2 = 0 (swoja droga jestem ciekaw jej miny :))
to nie jest problem z dupy wziety, ogolnie na co
a mod b = a - (podłoga(a/b))*b
gdzie podłoga(x) to największa liczba całkowita nie większa od x.
Z stąd dla -12 mod 5 = 3
java script:alert('-12 / 5 = ' + ((-12-(-12%5))/5) + ' r. '+(-12%5))
i naciśnij Enter
(Tylko najpierw usuń spację rozdzielającą słowa java i script)
EDIT.
A teraz sobie nagrabiłeś, c#^*@, wylatujesz!
-12 przez 5 = -3 i reszty 3
W drugim co prawda nie ma znaku minus, ale o to chodzi:
12 przez -5 = -2 i reszty 2
wrzucam w pokazywarkę, bo wykop dziwnie nieraz radzi sobie z gwiazdkami.
W pokazywarce jest coś takiego jak latex, on służy m.in. do składania wzorów matematycznych.
12/5 = 2 reszty 2 to wie każdy i się nad tym nie zastanawia bo tu wynik jest najbliżej zera i jak najmniejszy. Można to jeszcze zapisać 12/5 = 3 reszty -3. Przy dzieleniu prze ujemne liczby pojawia się jednak ten problem i