Mengapa 2 mod 4 = 2?


150

Saya malu untuk mengajukan pertanyaan sederhana seperti itu. Masa hukuman saya tidak dimulai untuk dua minggu lagi jadi saya tidak bisa meminta seorang profesor, dan ketegangan itu akan membunuh saya.

Mengapa 2 mod 4 = 2?


45
Karena 2 = 0 * 4 + 2.
p4bl0


1
Dalam x / y hasil terdiri dari bagian integer dan bagian fraksi. Jika Anda mengalikan bagian pecahan dengan pembagi, Anda mendapatkan sisanya. Dan x = Integer bagian y + Sisa (yaitu bagian Fraksi y). Dalam hal ini bagian Integer adalah 0, dan sisanya adalah 2.
mshsayem

76
senang Anda memiliki keberanian untuk mengajukan pertanyaan itu.
Membuka

yang modulo jauh jauh untuk menjadi sama dengan membagi dua nomor.
holex

Jawaban:


151

Mod hanya berarti Anda mengambil sisanya setelah melakukan pembagian. Karena 4 masuk ke 2 kali nol, Anda berakhir dengan sisa 2.


95

Modulo adalah sisanya, bukan divisi.

2 / 4 = 0R2
2 % 4 = 2

Tanda %sering digunakan untuk operator modulo, sebagai pengganti kata mod.

Sebab x % 4, Anda mendapatkan tabel berikut (untuk 1-10)

 x x%4
------
 1  1
 2  2
 3  3
 4  0
 5  1
 6  2
 7  3
 8  0
 9  1
10  2

18

Modulo (mod,%) adalah operator Sisa.

2%2 = 0 (2/2 = 1 remainder 0)
1%2 = 1 (1/2 = 0 remainder 1)
4%2 = 0 (4/2 = 2 remainder 0)
5%2 = 1 (5/2 = 2 remainder 1)

3
Dan penjelasan "verbose": 2 = 4 · 0 + 2 ;-)
Michael Krelin - hacker

13

Jauh lebih mudah jika Anda menggunakan pisang dan sekelompok orang.

Katakanlah Anda memiliki 1 pisang dan kelompok 6 orang, ini Anda akan mengungkapkan: 1 mod 6/ 1 % 6/ 1 modulo 6.

Anda membutuhkan 6 pisang untuk setiap orang dalam kelompok untuk diberi makan dan bahagia.

Jadi jika Anda memiliki 1 pisang dan perlu membagikannya dengan 6 orang, tetapi Anda hanya dapat berbagi jika Anda memiliki 1 pisang untuk setiap anggota grup, yaitu 6 orang, maka Anda akan memiliki 1 pisang (sisanya, tidak dibagikan kepada siapa pun di grup), hal yang sama berlaku untuk 2 pisang. Maka Anda akan memiliki 2 pisang sebagai sisa (tidak ada yang dibagikan).

Tetapi ketika Anda mendapatkan 6 pisang, maka Anda harus bahagia, karena dengan demikian ada 1 pisang untuk setiap anggota dalam kelompok 6 orang, dan sisanya adalah 0 atau tidak ada pisang yang tersisa ketika Anda membagikan semua 6 pisang pada 6 orang.

Sekarang, untuk 7 pisang dan 6 orang dalam kelompok, Anda akan memilikinya 7 mod 6 = 1, ini karena Anda memberi 6 orang masing-masing 1 pisang, dan 1 pisang sisanya.

Untuk 12 mod 6atau 12 pisang dibagi pada 6 orang, masing-masing akan memiliki dua pisang, dan sisanya adalah 0.



8

Saya juga bingung tentang hal ini, hanya beberapa menit yang lalu. Kemudian saya melakukan pembagian dengan tangan panjang pada selembar kertas dan masuk akal:

  • 4 masuk ke dalam 2 kali nol.
  • 4 kali 0 adalah 0.
  • Anda menempatkan nol di bawah angka 2 dan kurangi yang meninggalkan angka 2.

Sejauh itulah komputer akan mengatasi masalah ini. Komputer berhenti di sana dan mengembalikan 2, yang masuk akal karena itulah yang "%" (mod) minta.

Kami telah dilatih untuk memasukkan desimal dan terus melakukan itu sebabnya ini bisa berlawanan dengan intuisi pada awalnya.


7

Seseorang menghubungi saya dan meminta saya untuk menjelaskan lebih rinci jawaban saya di komentar pertanyaan. Jadi inilah yang saya balas kepada orang itu kalau-kalau itu bisa membantu orang lain:

Operasi modulo memberi Anda sisa disivion euclidian (yang hanya bekerja dengan bilangan bulat, bukan bilangan real). Jika Anda memiliki A sehingga A = B * C + D (dengan D <B), maka hasil bagi dari pembagian euclidian A oleh B adalah C, dan sisanya adalah D. Jika Anda membagi 2 dengan 4, hasil bagi adalah 0 dan sisanya 2.

Misalkan Anda memiliki objek A (yang tidak dapat Anda potong). Dan Anda ingin mendistribusikan jumlah yang sama dari benda-benda itu kepada orang B Selama Anda memiliki lebih dari objek B, Anda memberi masing-masing 1, dan ulangi. Ketika Anda memiliki kurang dari objek B yang tersisa, Anda berhenti dan menyimpan objek yang tersisa. Jumlah waktu Anda mengulangi operasi, sebut saja nomor C, adalah hasil bagi. Jumlah objek yang Anda simpan pada akhirnya, sebut saja D, adalah sisanya.

Jika Anda memiliki 2 objek dan 4 orang. Anda sudah memiliki kurang dari 4 objek. Jadi setiap orang mendapatkan 0 objek, dan Anda menyimpan 2.

Itu sebabnya 2 modulo 4 adalah 2.


5

Operator modulo mengevaluasi sisa dari pembagian dari dua operan integer. Berikut ini beberapa contoh:

23 % 10 evaluates to 3 (because 23/10 is 2 with a remainder of 3)
50 % 50 evaluates to 0 (50/50 is 1 with a remainder of 0)
9 % 100 evaluates to 9 (9/100 is 0 with a remainder of 9)

4

mod berarti reaminder ketika dibagi dengan. Jadi 2 dibagi 4 adalah 0 dengan 2 sisanya. Oleh karena itu 2 mod 4 adalah 2.


4

Modulo adalah sisanya, dinyatakan sebagai bilangan bulat, dari ekspresi divisi matematika.

Jadi, katakanlah Anda memiliki piksel pada layar pada posisi 90 di mana layarnya 100 piksel lebar dan tambahkan 20, itu akan membungkus ke posisi 10. Mengapa ... karena 90 + 20 = 110 maka 110% 100 = 10.

Bagi saya untuk memahaminya saya menganggap modulo adalah representasi bilangan bulat dari bilangan pecahan. Selanjutnya jika Anda melakukan ekspresi mundur dan memproses sisanya sebagai angka pecahan dan kemudian ditambahkan ke pembagi itu akan memberi Anda jawaban asli Anda.

Contoh:

    100
(A) ---  =  14 mod 2
     7

    123
(B) ---  =  8 mod 3
     15

     3
(C) ---  =  0 mod 3
     4

Terbalik direkayasa untuk:

                        2      14(7)    2       98    2     100
 (A) 14 mod 2  =  14 + ---  =  ----- + ---  =  --- + ---  = ---
                        7        7      7       7     7      7

                      3      8(15)    3      120    3      123
 (B) 8 mod 3  =  8 + ---  =  ----- + ---  =  --- + ---  =  ---
                      15       15     15      15    15      15

                      3       3
 (B) 0 mod 3  =  0 + ---  =  ---
                      4       4

2

Saat Anda membagi 2 dengan 4, Anda mendapatkan 0 dengan sisa 2 atau tersisa. Modulo hanyalah sisa setelah membagi nomor.


1

Saya pikir Anda semakin bingung tentang bagaimana persamaan modulo dibaca.

Ketika kita menulis persamaan pembagian seperti 2/4kita membagi 2 dengan 4.

Ketika persamaan modulo ditulis seperti 2 % 4kita membagi 2 by 4(pikirkan 2 lebih dari 4) dan kembalikan sisanya.


1

MOD adalah operator sisanya. Itu sebabnya 2 mod 4 memberi 2 sebagai sisanya. 4 * 0 = 0 dan kemudian 2-0 = 2. Untuk membuatnya lebih jelas, coba lakukan hal yang sama dengan 6 mod 4 atau 8 mod 3.


1

Ini adalah Algoritma Euclid.

misalnya

a mod b = k * b + c => a mod b = c, di mana k adalah bilangan bulat dan c adalah jawabannya

4 mod 2 = 2 * 2 + 0 => 4 mod 2 = 0

27 mod 5 = 5 * 5 + 2 => 27 mod 5 = 2

jadi jawabannya adalah

2 mod 4 = 0 * 4 + 2 => 2 mod 4 = 2


1

Untuk:

2 mod 4

Kita dapat menggunakan formula kecil ini yang saya buat setelah berpikir sedikit, mungkin itu sudah didefinisikan di suatu tempat yang saya tidak tahu tetapi bekerja untuk saya, dan ini sangat berguna.

A mod B = C di mana C adalah jawabannya

K * B - A = |C| di mana K adalah berapa kali B cocok dengan A

2 mod 4 akan menjadi:

0 * 4 - 2 = |C|

C = |-2| => 2

Semoga berhasil untuk Anda :)


1

Operasi mod bekerja dengan pengingat.

Ini disebut aritmatika modular.

 a==b(mod m) 
 then m|(a-b)
 a-b=km 
 a=b+km
 So, 2=2+0*4

1

Untuk menjawab modulo x % y, Anda mengajukan dua pertanyaan:

A- Berapa kali ymasuk xtanpa sisa? Untuk 2% 4 itu 0.

B- Berapa banyak yang perlu Anda tambahkan untuk mendapatkan kembali itu x? Untuk mendapatkan dari 0 kembali ke 2 Anda harus 2-0, yaitu 2.

Ini dapat diringkas dalam satu pertanyaan seperti: Berapa banyak yang perlu Anda tambahkan ke hasil integer-ish pembagian xoleh y, untuk kembali x?

Dengan integer-ish itu hanya berarti bilangan bulat dan bukan pecahan apa pun yang menarik.

Sisa pembagian fraksional (misalnya .283849) tidak menarik dalam modulo karena modulo hanya berurusan dengan bilangan bulat.


0

Untuk cara visual untuk memikirkannya, gambarkan sebuah jam wajah yang, dalam contoh khusus Anda, hanya pergi ke 4 bukannya 12. Jika Anda mulai dari 4 pada jam (yang seperti mulai dari nol) dan mengitari searah jarum jam untuk 2 "jam", Anda mendarat di 2, sama seperti memutarnya searah jarum jam selama 6 "jam" juga akan mendarat pada 2 (6 mod 4 == 2 sama seperti 2 mod 4 == 2).


6
Itu sebenarnya cukup membingungkan.
Joe Phillips

@ do3boy: ide tentang tampilan jam adalah metode yang sangat sederhana dan mudah untuk menggambarkan fakta modulo. kecuali bahwa akan lebih mudah untuk menggunakan format 24 jam untuk menjelaskannya daripada mengubah jumlah posisi yang tersedia.
Atmocreations

0

Ini bisa menjadi saat yang tepat untuk menyebutkan fungsi modr (). Ia mengembalikan bagian keseluruhan dan sisanya dari divisi.

print("\n 17 // 3 =",17//3," # Does the same thing as int(17/3)")
print(" 17 %  3 =",17%3," # Modulo division gives the remainder.")
whole, remain = divmod(17,3)
print(" divmod(17,3) returns ->",divmod(17,3),end="")
print(" because 3 goes into 17,",whole,"times with a remainder of",remain,end=".\n\n")
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.